body.reference-menu{--menu-accent:#1298f1;background:white;color:#151515}
.reference-menu.public main{margin:0;max-width:none;padding:0 0 82px;border-radius:0;box-shadow:none;min-height:100dvh}
.reference-top{background:#1298ef;border-top:4px solid #ff13ba;color:white}
.reference-top-inner{display:flex;align-items:center;gap:14px;padding:9px 16px;min-height:58px}
.reference-top-inner>img{width:40px;height:40px;object-fit:cover;border:1px solid white;border-radius:50%;background:white}
.reference-top-inner h1{font-size:18px;font-weight:600;margin:0;color:white}
.top-actions{display:flex;gap:10px;margin-left:auto;margin-right:max(0px,calc((100vw - 800px)/2 - 16px))}
.top-actions button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:#dbf2ff;color:#1298ef;padding:4px}
.top-actions svg{width:18px;height:18px}
.reference-content{width:100%;padding:0 clamp(18px,11.2vw,150px)}
.store-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #ddd;padding:20px 0;font-size:12px;color:#565e68}
.strip-dot{margin:0 5px;color:#999}
.store-strip button{border:0;background:none;color:#1298f1;font-size:12px;white-space:nowrap;padding:0}
#search-panel{padding-top:16px}#search-panel[hidden]{display:none}
.reference-menu h2{font-size:18px;font-weight:600;margin:18px 0 8px}
.reference-featured-list{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
.reference-featured{flex:0 0 140px;width:140px;border:0;background:none;text-align:left;padding:0;color:#101010}
.reference-featured>img{width:140px;height:140px;object-fit:cover;border-radius:4px;display:block;background:#f5f5f5}
.reference-featured h3{font-size:14px;line-height:1.2;margin:5px 0 0;font-weight:600;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.reference-featured strong,.reference-product strong{font-size:16px;font-weight:600;color:#555e68}
.reference-category{margin-top:24px}.reference-category h2{font-size:21px;color:#1298f1;margin:0 0 8px}
.reference-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.reference-product{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #e7e7e7;border-radius:9px;background:white;text-align:left;padding:8px;color:#555e68;min-width:0}
.reference-product>div{min-width:0;flex:1}.reference-product h3{font-size:16px;font-weight:400;margin:0 0 3px}
.reference-product p{font-size:13px;font-weight:300;line-height:1.3;margin:0 0 2px;color:#68727d;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.reference-product>img{width:90px;height:90px;object-fit:cover;border-radius:4px;flex-shrink:0;background:#f5f5f5}
.bottom-navigation{position:fixed;z-index:5;bottom:0;left:0;right:0;display:block;margin:0;background:white;border-top:1px solid #e5e5e5;padding-bottom:env(safe-area-inset-bottom)}
.bottom-inner{display:flex;justify-content:space-between;padding:0 clamp(18px,11.2vw,150px)}
.bottom-inner button{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:5px;min-width:48px;min-height:58px;border:0;border-radius:0;background:none;color:#999;padding:8px 0;font-size:11px;font-weight:400}
.bottom-inner button.current{color:#1298f1}.bottom-inner svg{width:23px;height:23px}.bottom-inner b{background:#1298f1;color:white;padding:1px 5px;border-radius:9px;font-weight:400}
.reference-menu .menu-footer{font-size:12px;padding:32px 0;color:#999}
@media(hover:hover){.reference-product:hover{border-color:#1298f1}.reference-featured:hover h3{color:#1298f1}}
@media(max-width:700px){.reference-content{padding:0 16px}.reference-top-inner{gap:10px}.reference-top-inner h1{font-size:16px}.top-actions{margin-right:0}.store-strip{padding:16px 0;font-size:11px;gap:10px}.reference-product-grid{grid-template-columns:1fr;gap:10px}.reference-featured{flex-basis:125px;width:125px}.reference-featured>img{width:125px;height:125px}.reference-category h2{font-size:19px}.bottom-inner{padding:0 25px}.reference-product h3{font-size:15px}}
@media(max-width:360px){.reference-top-inner h1{font-size:14px}.reference-top-inner{padding:9px 12px;gap:8px}.top-actions{gap:6px}.reference-product{gap:10px}.reference-product>img{width:78px;height:78px}.store-strip>span{max-width:190px}}

/* Detalhes compactos, com a ação de adicionar sempre acessível. */
.reference-menu #menu-dialog{width:calc(100% - 24px);max-width:560px;max-height:calc(100dvh - 24px);border-radius:14px;scrollbar-width:none;overscroll-behavior:contain}
.reference-menu #menu-dialog::-webkit-scrollbar{display:none}
.reference-menu .detail-picture{display:block;height:clamp(100px,24dvh,190px);object-fit:cover;object-position:center}
.reference-menu .dialog-inner{padding:20px 24px}
.reference-menu .dialog-inner h2{font-size:18px;margin:0 0 10px;line-height:1.3}
.reference-menu .dialog-inner p{margin:8px 0 12px;line-height:1.4}
.reference-menu .observation-label{margin:16px 0 8px}
.reference-menu #observation{min-height:64px;height:64px;max-height:120px;padding:10px 12px;resize:vertical}
.reference-menu .add-row{position:sticky;bottom:0;background:white;padding-top:12px;margin-top:4px;padding-bottom:2px}
.reference-menu .add-row>.primary{min-height:44px}
@media(max-height:650px){
  .reference-menu .detail-picture{height:120px}
  .reference-menu .dialog-inner{padding:16px 22px}
  .reference-menu .dialog-inner h2{margin-bottom:6px;font-size:17px}
  .reference-menu .dialog-inner p{font-size:13px;margin:6px 0 8px}
  .reference-menu .observation-label{margin:12px 0 6px}
  .reference-menu #observation{min-height:54px;height:54px}
}

/* Fotos pequenas conservam seu tamanho em vez de virarem banners. */
.reference-menu #menu-dialog:has(.detail-picture){max-width:660px}
.reference-menu #menu-dialog:has(.detail-picture)[open]{display:grid;grid-template-columns:198px minmax(0,1fr);align-items:start}
.reference-menu #menu-dialog .detail-picture{width:180px;height:180px;max-width:180px;margin:18px 0 18px 18px;object-fit:contain;object-position:center;border-radius:10px;background:#f7f7f7}
.reference-menu #menu-dialog:has(.detail-picture) .dialog-inner{padding:20px 20px}
.reference-menu #menu-dialog:has(.detail-picture) .dialog-inner h2{padding-right:26px}
.reference-menu #menu-dialog:has(.detail-picture) .add-row{gap:12px;justify-content:flex-start}
.reference-menu #menu-dialog:has(.detail-picture) .add-row>.primary{flex:0 1 auto;min-width:0;min-height:40px;padding:10px 22px;font-size:14px;line-height:20px;border-radius:8px}
.reference-menu #menu-dialog:has(.detail-picture) .quantity button{height:40px}
@media(max-width:600px){
  .reference-menu #menu-dialog:has(.detail-picture){max-width:420px}
  .reference-menu #menu-dialog:has(.detail-picture)[open]{grid-template-columns:minmax(0,1fr)}
  .reference-menu #menu-dialog .detail-picture{width:160px;height:160px;max-width:160px;margin:18px auto 0}
  .reference-menu #menu-dialog:has(.detail-picture) .dialog-inner{padding:18px 20px}
}
@media(max-height:550px) and (max-width:600px){
  .reference-menu #menu-dialog .detail-picture{width:110px;height:110px;margin-top:12px}
  .reference-menu #menu-dialog:has(.detail-picture) .dialog-inner{padding:12px 18px}
}
.reference-top{border-top:0}
.reference-top-inner{max-width:none;padding:14px clamp(18px,11.2vw,150px);min-height:74px;gap:14px}
.reference-top-inner>img{width:44px;height:44px;border:2px solid #ffffffb3}
.reference-top-inner h1{font-size:18px;line-height:1.3}
.top-actions{margin-left:auto;margin-right:0;gap:10px}
.top-actions button{width:36px;height:36px;border:1px solid #ffffff50;border-radius:8px;background:#ffffff16;color:white;padding:8px}
.top-actions svg{width:19px;height:19px}
.store-strip{border-bottom:0;padding:18px 0 12px;align-items:center;color:#778491}
.store-strip button{font-size:13px;font-weight:500;display:flex;gap:6px;align-items:center}
.store-strip button::after{content:'›';font-size:19px;line-height:1}
@media(max-width:700px){.reference-top-inner{padding:12px 16px;min-height:68px;gap:10px}.reference-top-inner h1{font-size:16px}.reference-top-inner>img{width:40px;height:40px}.top-actions{gap:8px}.top-actions button{width:34px;height:34px;padding:7px}.store-strip{padding:15px 0 8px;font-size:12px}}
@media(max-width:360px){.reference-top-inner h1{font-size:14px}.reference-top-inner{padding:12px;gap:8px}.top-actions{gap:6px}}
.reference-menu .reference-featured-section{padding-top:6px;margin-bottom:28px}
.reference-menu .reference-featured-section>h2{font-size:19px;margin:18px 0 14px}
.reference-menu .reference-featured-list{gap:18px;padding-bottom:8px;scroll-snap-type:x proximity}
.reference-menu .reference-featured{flex:0 0 172px;width:172px;display:flex;flex-direction:column;align-items:stretch;scroll-snap-align:start}
.reference-menu .reference-featured>img{width:172px;height:160px;border-radius:8px;object-fit:cover}
.reference-menu .reference-featured h3{font-size:14px;font-weight:500;line-height:1.35;height:38px;margin:10px 0 6px;-webkit-line-clamp:2}
.reference-menu .reference-featured strong{font-size:15px;line-height:1.4;font-weight:600;color:#46515e;margin:0}
@media(max-width:700px){.reference-menu .reference-featured-list{gap:14px}.reference-menu .reference-featured{flex-basis:148px;width:148px}.reference-menu .reference-featured>img{width:148px;height:140px}.reference-menu .reference-featured-section{margin-bottom:20px}}
.reference-menu .reference-featured-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;overflow:visible}
.reference-menu .reference-featured{display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:14px;row-gap:6px;align-items:center;width:100%;min-width:0;padding:10px;border:1px solid #e9edf1;border-radius:10px;background:white;text-align:left}
.reference-menu .reference-featured>img{grid-row:1 / 3;width:88px;height:88px;border-radius:7px;object-fit:cover}
.reference-menu .reference-featured h3{grid-column:2;font-size:14px;line-height:1.35;font-weight:500;height:auto;max-height:57px;margin:0;-webkit-line-clamp:3;align-self:end}
.reference-menu .reference-featured strong{grid-column:2;margin:0;align-self:start;font-size:15px;color:#1298ef}
@media(min-width:701px) and (max-width:1100px){.reference-menu .reference-featured-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.reference-menu .reference-featured-list{display:flex;overflow-x:auto;gap:12px;padding-bottom:8px}.reference-menu .reference-featured{flex:0 0 280px;width:280px}.reference-menu .reference-featured>img{width:88px;height:88px}}
.reference-menu .reference-featured-list{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px}
.reference-menu .reference-featured{position:relative;display:block;flex:0 0 184px;width:184px;height:184px;padding:0;border:0;border-radius:10px;overflow:hidden;background:#20242a;color:white}
.reference-menu .reference-featured::after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.86));pointer-events:none}
.reference-menu .reference-featured>img{display:block;width:184px;height:184px;border-radius:0;object-fit:cover}
.reference-menu .reference-featured h3{position:absolute;z-index:1;left:12px;right:12px;bottom:38px;margin:0;height:auto;max-height:38px;color:white;font-size:14px;line-height:1.35;font-weight:500;-webkit-line-clamp:2;text-shadow:0 1px 3px #0006}
.reference-menu .reference-featured strong{position:absolute;z-index:1;left:12px;bottom:12px;margin:0;font-size:16px;font-weight:600;color:white;line-height:1.3}
@media(max-width:700px){.reference-menu .reference-featured-list{gap:12px}.reference-menu .reference-featured{flex-basis:168px;width:168px;height:176px}.reference-menu .reference-featured>img{width:168px;height:176px}.reference-menu .reference-featured h3{font-size:13px;bottom:36px}.reference-menu .reference-featured strong{font-size:15px}}
.reference-menu .reference-featured-list{gap:12px}
.reference-menu .reference-featured{flex:0 0 140px;width:140px;height:148px;border-radius:8px}
.reference-menu .reference-featured>img{width:140px;height:148px}
.reference-menu .reference-featured h3{left:10px;right:10px;bottom:32px;font-size:12px;line-height:1.3;max-height:32px}
.reference-menu .reference-featured strong{left:10px;bottom:10px;font-size:14px}
@media(max-width:700px){.reference-menu .reference-featured{flex-basis:132px;width:132px;height:142px}.reference-menu .reference-featured>img{width:132px;height:142px}.reference-menu .reference-featured h3{font-size:12px;bottom:32px}.reference-menu .reference-featured strong{font-size:14px}}
.reference-menu .reference-featured-list{display:flex;gap:20px;overflow-x:auto;padding:4px 0 10px}
.reference-menu .reference-featured{display:flex;flex-direction:column;align-items:center;flex:0 0 142px;width:142px;height:auto;padding:0;border:0;border-radius:0;overflow:visible;background:transparent;color:#25312b;text-align:center}
.reference-menu .reference-featured::after{display:none}
.reference-menu .reference-featured>img{width:100px;height:100px;border-radius:50%;object-fit:cover;margin:0 0 12px}
.reference-menu .reference-featured h3{position:static;display:-webkit-box;width:100%;height:38px;max-height:38px;margin:0 0 6px;font-size:13px;line-height:1.4;font-weight:500;color:#25312b;text-shadow:none;-webkit-line-clamp:2}
.reference-menu .reference-featured strong{position:static;margin:0;font-size:14px;line-height:1.4;color:#556171;font-weight:600}
@media(max-width:700px){.reference-menu .reference-featured-list{gap:14px}.reference-menu .reference-featured{flex-basis:124px;width:124px;height:auto}.reference-menu .reference-featured>img{width:88px;height:88px}.reference-menu .reference-featured h3{font-size:12px;height:34px;max-height:34px}.reference-menu .reference-featured strong{font-size:13px}}
.reference-menu .reference-featured-list{display:flex;gap:12px;overflow-x:auto;padding:4px 0 10px}
.reference-menu .reference-featured{display:grid;grid-template-columns:minmax(0,1fr) 72px;grid-template-rows:1fr auto;column-gap:12px;row-gap:5px;align-items:center;flex:0 0 260px;width:260px;height:94px;padding:10px;border:1px solid #e7e7e7;border-radius:8px;background:white;text-align:left;overflow:hidden}
.reference-menu .reference-featured>img{grid-column:2;grid-row:1 / 3;width:72px;height:72px;object-fit:cover;border-radius:5px;margin:0}
.reference-menu .reference-featured h3{grid-column:1;grid-row:1;width:100%;height:auto;max-height:38px;align-self:end;margin:0;color:#354351;font-size:13px;font-weight:500;line-height:1.4;-webkit-line-clamp:2}
.reference-menu .reference-featured strong{grid-column:1;grid-row:2;align-self:start;color:#354351;font-size:14px;font-weight:600;margin:0}
@media(max-width:700px){.reference-menu .reference-featured{flex-basis:246px;width:246px;height:94px}.reference-menu .reference-featured>img{width:72px;height:72px}.reference-menu .reference-featured h3{height:auto;max-height:38px;font-size:13px}.reference-menu .reference-featured strong{font-size:14px}}
.reference-menu .reference-featured-list{scrollbar-width:none;scroll-snap-type:none;scroll-behavior:auto}
.reference-menu .reference-featured-list::-webkit-scrollbar{display:none}
.reference-menu .reference-featured{flex:0 0 340px;width:340px;height:100px;grid-template-columns:minmax(0,1fr) 78px;grid-template-rows:auto 1fr auto;column-gap:12px;row-gap:3px;padding:10px;border-radius:8px}
.reference-menu .reference-featured>img{grid-column:2;grid-row:1 / 4;width:78px;height:78px;border-radius:4px}
.reference-menu .reference-featured h3{grid-row:1;align-self:start;font-size:13px;line-height:1.3;max-height:17px;-webkit-line-clamp:1;font-weight:400}
.reference-menu .reference-featured .featured-description{grid-column:1;grid-row:2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:11.5px;line-height:1.3;font-weight:300;color:#7a8693;margin:0;max-height:30px;text-align:left}
.reference-menu .reference-featured strong{grid-row:3;font-size:14px;line-height:1.3;align-self:end}
@media(max-width:700px){.reference-menu .reference-featured{flex-basis:300px;width:300px;height:100px}.reference-menu .reference-featured>img{width:78px;height:78px}}
