/* V2.1 — camada visual: sem mudanças no motor de custos, persistência e autenticação */
:root{--wine:#602b37;--wine2:#834350;--cream:#faf6f0;--gold:#c59c65;--ink:#302a30;--muted:#827b81;--line:#eae4e2;--good:#207554;--bad:#b84b52;--shadow:0 6px 24px rgba(51,31,37,.045)}
html{scroll-behavior:smooth}body{font-family:Inter,'Segoe UI',system-ui,-apple-system,sans-serif;background:#f8f8f9;color:var(--ink);font-size:14px;line-height:1.55}button,input,select,textarea{font-family:inherit}button{transition:background .17s,border-color .17s,transform .17s,box-shadow .17s}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #cda8ae;outline-offset:2px}button:active{transform:scale(.985)}
aside{width:258px;background:#fff;color:var(--ink);border-right:1px solid var(--line);padding:23px 13px 14px;gap:16px;box-shadow:2px 0 20px #31233204;z-index:30}aside .brand{border-bottom:1px solid var(--line);padding:10px 13px 23px;display:flex;align-items:center;gap:12px}aside .brand h1{color:var(--wine);font-size:23px;letter-spacing:-.7px}aside .brand p{color:#8d7b75;letter-spacing:1.3px;font-size:9px;margin-top:6px}.brand-mark{width:39px;height:39px;flex:none;background:var(--wine);color:#fff;display:grid;place-items:center;border-radius:12px;font:700 24px Georgia,serif;box-shadow:0 4px 14px #602b3725}
nav{gap:3px;align-content:start}nav button{color:#655d65;display:flex;align-items:center;gap:11px;border-radius:11px;padding:12px 13px;font-weight:560}nav button:hover{background:#faf5f3;color:var(--wine)}nav button.active{background:#f5e9e7;color:var(--wine);font-weight:750}nav button .nav-ico{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;font-size:18px;line-height:1}aside .bottom{border-top:1px solid var(--line);color:#9c9296;font-size:11px;line-height:1.6;margin-top:auto;padding:15px 13px 5px}
main{margin-left:258px;max-width:none;padding:31px clamp(17px,3vw,46px) 50px}.heading{padding:0 0 23px;border-bottom:1px solid var(--line);margin-bottom:24px;align-items:flex-start}.heading h2{font-family:Georgia,serif;letter-spacing:-.7px;font-size:32px}.heading .sub{font-size:13px}.heading>.row{justify-content:flex-end;gap:7px}.heading>.row .btn{font-size:12px}.btn{border-radius:10px;padding:10px 16px;box-shadow:0 3px 10px #602b3710}.btn:hover{filter:brightness(.96);box-shadow:0 6px 14px #602b371b}.btn.alt{background:#fff;color:var(--wine);border-color:#e6dce0;box-shadow:none}.btn.small{padding:8px 11px}
.panel,.stat,.pcard,.size-tile{border:1px solid #eee9ea;border-radius:16px;background:#fff;box-shadow:var(--shadow)}.panel{padding:clamp(16px,2vw,24px);margin-bottom:18px}.panel>h3{font-size:20px}.stat{padding:20px;min-height:115px;position:relative;overflow:hidden}.stat:before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:var(--gold);opacity:.85}.stat strong{font-family:Georgia,serif;color:var(--wine);font-size:25px}.stats{gap:13px;margin-bottom:18px}.pcard{overflow:hidden}.pcard:hover{border-color:#dac3c6;box-shadow:0 12px 30px #37232616}.pcard .body{padding:17px}.pcard h3{font-size:19px}.cover{height:148px;background:linear-gradient(145deg,#eee3dc,#faf6f0)}
input,select,textarea{min-height:39px;border:1px solid #dfd9db;border-radius:9px;padding:9px 12px;background:#fff;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:0;border-color:#ac6979;box-shadow:0 0 0 3px #ac69791a}.field{gap:6px}.field label{font-size:12px;color:#68626a}.toolbar{align-items:center}.search{border-radius:12px}.pricecard{background:#fff;border-color:#e9e1e2;border-radius:13px}.pricecard:hover{border-color:#d9c4c7}.notice,.meta,.rate,.sub{line-height:1.5}.tag{letter-spacing:.1px}.tblwrap{border:1px solid var(--line);border-radius:11px}th{background:#faf8f8;font-weight:700;color:#655b61;white-space:nowrap}td,th{padding:12px 13px}tr:hover td{background:#fdfbfb}.modal-backdrop{backdrop-filter:blur(4px)}.modal-panel{border-radius:20px;box-shadow:0 24px 80px #230f2650}.save-indicator{box-shadow:none}.weight-panel,.info-mini{border-radius:12px}
/* Contexto e navegação rápida */
.fm-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px}.fm-breadcrumb{font-size:11px;color:#94878e;text-transform:uppercase;letter-spacing:1.3px;font-weight:800}.fm-topline .fm-quick{font-size:12px;border:0;background:#f0e6e7;color:var(--wine);border-radius:9px;padding:8px 12px;font-weight:750}.fm-topline .fm-quick:hover{background:#e9d5d7}.fm-mobile-bar{display:none}.fm-tools-toggle{display:none}.fm-action-label{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.4px}.fm-summary{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}.fm-summary button{border:1px solid #e9dcde;background:white;color:var(--wine);border-radius:999px;padding:7px 13px;font-size:12px;font-weight:700}.fm-summary button:hover{background:#f8f0f0}.fm-footer{font-size:11px;color:#a098a0;margin-top:24px;text-align:right}
@media(max-width:1050px){.heading>.row{justify-content:flex-start}.heading{flex-direction:column}.layout{grid-template-columns:1fr}.pricegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body{padding-bottom:75px}aside{position:fixed;inset:auto 0 0 0;height:69px;width:100%;padding:4px 6px 3px;border:0;border-top:1px solid var(--line);box-shadow:0 -8px 22px #3123320d;display:block;overflow:hidden;background:#fff}aside .brand,aside .bottom{display:none!important}aside nav{display:flex;align-items:stretch;justify-content:space-around;gap:1px;overflow-x:auto;overflow-y:hidden;padding:0;height:60px}nav button{flex:1 0 65px;width:auto;max-width:105px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px!important;line-height:1.2;padding:7px 4px!important;border-radius:10px;white-space:nowrap}nav button .nav-ico{font-size:21px;height:24px}main{margin:0;padding:15px 13px 26px}.fm-mobile-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.fm-mobile-brand{font:700 19px Georgia,serif;color:var(--wine);display:flex;align-items:center;gap:9px}.fm-mobile-brand .brand-mark{width:30px;height:30px;font-size:18px;border-radius:9px}.fm-mobile-bar button{border:1px solid var(--line);background:#fff;color:var(--wine);border-radius:9px;padding:8px 11px;font-weight:700}.heading{gap:12px;padding-bottom:16px;margin-bottom:17px}.heading h2{font-size:28px}.heading>.row{width:100%;align-items:center;gap:7px}.heading>.row .btn{display:none}.heading>.row.fm-actions-open .btn{display:inline-flex}.heading>.row.fm-actions-open{padding:12px;border:1px solid var(--line);background:#fff;border-radius:12px}.heading>.row .save-indicator{display:inline-flex;font-size:11px}.fm-tools-toggle{display:inline-flex!important}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stat{padding:13px;min-height:92px}.stat strong{font-size:18px!important}.stat small{font-size:11px}.panel{padding:15px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pcard .body{padding:11px}.pcard h3{font-size:15px}.cover{height:103px}.cost{gap:4px;flex-wrap:wrap}.cost b{font-size:17px}.tag{font-size:9px}.pricegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar .btn{flex:0 1 auto}.search{min-width:0;width:100%}.heading>.row .btn{font-size:12px}.formgrid{grid-template-columns:1fr}.modal-panel{width:calc(100vw - 22px);max-height:92dvh}.tblwrap{margin-inline:-4px}.fm-footer{text-align:center}}
@media(max-width:375px){.cards{grid-template-columns:1fr}.cover{height:140px}nav button{font-size:9px!important}}
@media print{aside,.fm-mobile-bar,.fm-topline,.fm-tools-toggle,.fm-summary,.fm-footer{display:none!important}main{margin:0}}
