/* Compact, fully visible category controls. */
#thuc-don .tools{margin-top:18px}.category-caption{margin-bottom:10px;font-size:11px}#thuc-don .tabs,#full-menu-tabs{gap:8px;padding:3px 2px 5px}#thuc-don .tabs .tab,#full-menu-tabs .tab{min-height:45px;padding:10px 14px;font-size:19px;gap:7px;border-radius:9px;box-shadow:0 2px 0 #101d0b85}#thuc-don .tabs .tab:before{min-width:20px;width:20px;height:20px;font-size:9px;border-radius:5px}#thuc-don .search{margin-top:14px;padding:12px 16px;min-height:46px;font-size:15px;border-radius:10px}
/* Let the venue card end naturally instead of stretching to the map height. */
.venue-frame{align-self:start;filter:drop-shadow(3px 4px 0 #101e0b70)}.venue-frame .frame-paper{padding:9px}.venue-frame .venue-photo{aspect-ratio:2.45;min-height:0;border-bottom-width:3px}.venue-photo span{font-size:10px;padding:6px 8px;bottom:9px;left:9px}.venue-info{position:relative;padding:19px 20px 17px;min-width:0}.venue-info>.eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:11px}.venue-info h3{font-size:33px;line-height:1.02;margin-bottom:11px;padding-right:86px}.venue-address{font-size:21px;line-height:1.3;padding-right:88px}.venue-locality{font-size:11px;line-height:1.6;margin:5px 0 14px;padding-right:85px}.venue-actions{gap:8px;display:grid;grid-template-columns:1fr 1fr}.venue-actions .btn{min-height:44px;padding:11px 10px;font-size:20px;border-radius:8px;border-width:1px;box-shadow:0 2px 0 #27351255}.venue-source{font-size:9px;line-height:1.6;margin-top:11px}.venue-art{position:absolute;width:101px;height:141px;right:13px;top:24px;pointer-events:none}.venue-mascot{position:absolute;width:68px;height:88px;right:-2px;top:6px;rotate:8deg;animation:venue-cheer 4s ease-in-out infinite}.venue-food{position:absolute;display:block;width:47px;height:47px;border-radius:50%;background-image:url('assets/menu-examples.png');background-size:400% 400%;background-repeat:no-repeat;border:2px solid #fff0ce;box-shadow:0 3px 0 #83614430}.venue-food-grill{left:-3px;top:53px;background-position:33.3333% 33.3333%;rotate:-13deg}.venue-food-clams{right:3px;top:90px;background-position:66.6667% 33.3333%;rotate:12deg}.venue-art-spark{position:absolute;left:8px;top:7px;color:#a96537;font-size:19px}
@keyframes venue-cheer{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-3px) rotate(3deg)}}
@media(min-width:601px) and (max-width:950px){.venue-frame .location-card{display:grid;grid-template-columns:1fr 1.15fr}.venue-frame .venue-photo{aspect-ratio:auto;border-bottom:0;min-height:0}.venue-info{padding:18px}.venue-info h3{font-size:31px}.venue-address{font-size:20px}}
@media(max-width:600px){#thuc-don .tools{margin-top:15px}.category-caption{margin-bottom:8px;font-size:10px}#thuc-don .tabs,#full-menu-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:2px 0 4px}#thuc-don .tabs .tab,#full-menu-tabs .tab{font-size:16px;line-height:1.12;letter-spacing:0;min-height:46px;width:100%;padding:8px 5px;border-width:1px;gap:0;white-space:normal;word-break:normal}#thuc-don .tabs .tab:before{display:none}#thuc-don .tabs .tab:last-child,#full-menu-tabs .tab:last-child{grid-column:2;justify-self:stretch;width:100%}#thuc-don .search{padding:11px 14px;font-size:14px;margin-top:12px;min-height:44px;box-shadow:0 2px 0 #101d0b55}.venue-frame .frame-paper{padding:8px}.venue-frame .venue-photo{aspect-ratio:2.45;min-height:0}.venue-info{padding:16px 17px 15px}.venue-info>.eyebrow{font-size:8px;margin-bottom:10px}.venue-info h3{font-size:30px;margin-bottom:10px;padding-right:82px}.venue-address{font-size:20px;padding-right:76px}.venue-locality{font-size:10px;line-height:1.5;margin:5px 0 13px;padding-right:76px}.venue-art{right:12px;top:25px;width:88px;height:126px}.venue-mascot{width:60px;height:78px;right:0;top:0}.venue-food{width:41px;height:41px}.venue-food-grill{top:45px;left:0}.venue-food-clams{top:78px;right:0}.venue-art-spark{top:1px;left:5px;font-size:17px}.venue-actions .btn{min-height:44px;font-size:20px;padding:10px 8px}.venue-source{font-size:8px;line-height:1.5;margin-top:10px}.location-grid{gap:22px}}
@media(max-width:350px){#thuc-don .tabs,#full-menu-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}#thuc-don .tabs .tab:last-child,#full-menu-tabs .tab:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 4px)}.venue-info h3{font-size:27px}.venue-info{padding:15px}.venue-art{right:8px}.venue-address{font-size:18px}.venue-actions .btn{font-size:18px}}
@media(prefers-reduced-motion:reduce){.venue-mascot{animation:none}}
#thuc-don .category-caption #menu-overview{max-width:none;text-align:left;font-size:10px;line-height:1.4}
