:root{--ink:#24211e;--muted:#716c65;--line:#e6e1da;--paper:#fffdf9;--wash:#f5f2ed;--accent:#2d3127;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font:15px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:15px max(24px,calc((100vw - 1240px)/2));background:#fffc;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:19px;letter-spacing:.08em}.brand small{display:block;font:11px/1.3 inherit;color:var(--muted);letter-spacing:.04em}.page{max-width:1240px;margin:auto;padding:36px 24px 64px}.hero{background:linear-gradient(115deg,#fff 10%,#f4efe8);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,5vw,48px);margin-bottom:24px}.eyebrow,.meta{font-size:12px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.hero h1{font:clamp(30px,5vw,52px)/1.05 Georgia,serif;margin:8px 0 10px}.hero p{margin:0;color:var(--muted)}.search{display:flex;align-items:center;gap:10px;background:white;border:1px solid #d8d1c8;border-radius:14px;padding:5px 7px;margin-top:28px;box-shadow:0 12px 30px #554a3920}.search input{width:100%;border:0;outline:0;font-size:16px;padding:11px;background:transparent}.button{border:0;border-radius:10px;padding:10px 14px;font:600 14px inherit;cursor:pointer;white-space:nowrap}.button.dark{color:#fff;background:var(--accent)}.button.light{color:var(--ink);background:#ece7df}.button.danger{color:#fff;background:#993e37}.button:disabled{opacity:.45;cursor:not-allowed}.filters{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0 28px}.field,select,input,textarea{border:1px solid #dcd5cd;border-radius:10px;background:#fff;color:var(--ink);font:inherit}.field,select,input{min-height:42px;padding:9px 10px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.toolbar h2{font:24px Georgia,serif;margin:0}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:15px;cursor:pointer;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 22px #52453316}.cover{display:block;width:100%;height:205px;object-fit:cover;background:#e8e2da}.placeholder{display:grid;place-items:center;color:#8c837a;background:linear-gradient(135deg,#eae5de,#ded7ce)}.card-body{padding:15px}.card h3{font:20px Georgia,serif;margin:4px 0 9px}.price{font-weight:700}.badge{display:inline-block;font-size:12px;border-radius:99px;padding:5px 8px;margin-top:10px}.Na-loja{background:#dff1e2;color:#286238}.No-fornecedor{background:#e2ecf8;color:#285889}.Sob-encomenda{background:#f5ebca;color:#766019}.Indisponível{background:#f5dfdc;color:#8a322a}.empty{grid-column:1/-1;padding:56px;text-align:center;border:1px dashed #cfc6bb;border-radius:14px;color:var(--muted)}.modal{position:fixed;z-index:10;inset:0;display:none;place-items:center;padding:16px;background:#1b191670}.modal.open{display:grid}.dialog{width:min(950px,100%);max-height:94vh;overflow:auto;border-radius:20px;background:var(--paper);padding:26px;box-shadow:0 24px 70px #0005}.dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.dialog h2{font:31px Georgia,serif;margin:3px 0}.detail{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;margin-top:20px}.box{border:1px solid var(--line);border-radius:14px;padding:17px}.box h3{font:20px Georgia,serif;margin:0 0 10px}.hero-cover{height:310px;border-radius:11px}.row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{background:#eee9e2;border-radius:8px;padding:5px 8px;font-size:13px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;justify-content:flex-end}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:20px}.form-grid label{font-size:13px;color:var(--muted)}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:5px}.wide{grid-column:1/-1}.subsection{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;margin-top:4px}.subsection h3{margin:0 0 8px;font:21px Georgia,serif}.variant,.fabric-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin:8px 0}.dropzone{border:1px dashed #bdb2a6;border-radius:11px;padding:20px;text-align:center;color:var(--muted);cursor:pointer}.dropzone.drag{background:#f2ede6}.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.thumb{position:relative;width:76px;height:76px}.thumb img{width:100%;height:100%;object-fit:cover;border-radius:8px}.thumb button{position:absolute;right:-6px;top:-6px;border:0;border-radius:50%;background:#333;color:white;cursor:pointer}.login{max-width:420px;margin:10vh auto;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:20px}.login h1{font:36px Georgia,serif;margin:8px 0}.login form{display:grid;gap:12px}.notice{border-radius:11px;padding:12px 14px;background:#f5ebca;color:#675619;margin:12px 0}.hidden{display:none!important}#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:30;background:#292622;color:white;border-radius:10px;padding:10px 14px;opacity:0;transition:.2s;pointer-events:none}#toast.show{opacity:1}@media(max-width:950px){.grid{grid-template-columns:repeat(3,1fr)}.filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.topbar{padding:13px 16px}.page{padding:22px 16px}.grid{grid-template-columns:repeat(2,1fr);gap:10px}.cover{height:150px}.card-body{padding:11px}.card h3{font-size:18px}.filters{grid-template-columns:1fr 1fr}.detail,.form-grid{grid-template-columns:1fr}.search{align-items:stretch}.search .button{display:none}.hero{padding:25px 20px}.dialog{padding:19px}.variant,.fabric-row{grid-template-columns:1fr 1fr}.variant .remove,.fabric-row .remove{grid-column:2;justify-self:end}}@media(max-width:390px){.grid{grid-template-columns:1fr}}
