:root{font-family:system-ui,sans-serif;color:#173e32;background:#f4f4e9;line-height:1.5}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:880px;margin:auto;padding:20px}header{padding-bottom:14px}h1{font-size:30px;margin:10px 0 0}h2{font-size:25px}h3{font-size:18px;margin:0 0 8px}p{margin:8px 0 14px}a{color:#165942}nav{display:flex;gap:5px;flex-wrap:wrap;position:sticky;top:0;background:#e6eddf;padding:8px;z-index:2;justify-content:center;border-bottom:1px solid #b2c7b3}nav a{padding:8px 10px;background:white;border-radius:7px;text-decoration:none;font-weight:700;min-height:40px}section{scroll-margin-top:115px;margin-bottom:40px}article{background:#fffef7;border:1px solid #c0ccb9;border-radius:12px;padding:14px;margin:12px 0;overflow:hidden}.tiles,.set-row{display:flex;gap:4px;flex-wrap:wrap;align-items:flex-end}.set-row{margin:8px 0}.group{border:1px solid #bacbb5;border-radius:8px;padding:5px;max-width:100%}.group small{display:block}.tile{display:inline-flex;width:36px;height:50px;flex:0 0 36px;background:#fff;border:1px solid #a5aca3;border-radius:4px;box-shadow:0 2px 0 #bbc1b8;padding:2px}.tile svg{width:100%;height:100%;display:block}.tile.winning{outline:3px solid #ae3926;outline-offset:1px}.key{font-size:12px;color:#8d3023}.score{font-weight:700;background:#e9f0df;border-radius:6px;padding:8px}.gallery-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:7px}.face{text-align:center;background:#fff;padding:8px 2px;border-radius:7px;min-width:0}.face .tile{width:43px;height:60px}.face small{display:block;font-size:11px}.flower-map{display:flex;gap:10px;flex-wrap:wrap}.flower-map article{flex:1;min-width:100px}table{border-collapse:collapse;width:100%;background:white}th,td{padding:8px 4px;border:1px solid #c0ccb9;text-align:center;font-size:13px}footer{font-size:13px}small{line-height:1.4}#groups{display:flex;gap:8px;flex-wrap:wrap}#groups article{flex:1;min-width:115px}@media(max-width:360px){header,main,footer{padding:12px}.tile{width:31px;height:43px;flex-basis:31px}.group{padding:4px}.tiles{gap:3px}article{padding:10px}nav a{padding:8px;font-size:13px}h1{font-size:26px}}

.tiles .winning{outline:3px solid #1673b8;outline-offset:1px}
