.fitjoe-recipe-card{background:#161616;border:1px solid #333;border-radius:8px;padding:20px 22px;color:#fff;margin:24px 0}.fitjoe-recipe-meta{color:#ccc;font-size:14px;margin-bottom:14px}.fitjoe-recipe-macros{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.fitjoe-recipe-macros div{background:#1c1c1c;border:1px solid #2c2c2c;border-radius:6px;padding:10px 14px;text-align:center;min-width:68px;flex:1 1 68px}.fitjoe-recipe-macros strong{display:block;color:#7CFF00;font-size:16px}.fitjoe-recipe-macros span{display:block;font-size:11px;color:#999;margin-top:2px}.fitjoe-recipe-card h3{color:#7CFF00;margin:16px 0 8px;font-size:16px}.fitjoe-recipe-ingredients,.fitjoe-recipe-steps{margin:0 0 8px;padding-left:20px;line-height:1.7;color:#eee}.fitjoe-recipe-ingredients li,.fitjoe-recipe-steps li{margin-bottom:4px}.fitjoe-recipe-log{margin-top:20px;padding-top:16px;border-top:1px solid #333}.fitjoe-recipe-log-btn{background:#7CFF00;color:#000;border:0;border-radius:6px;padding:12px 18px;font-weight:700;cursor:pointer;font-size:14px;min-height:44px}.fitjoe-recipe-log-btn:hover{opacity:.88}.fitjoe-recipe-log-meal{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:4px}.fitjoe-recipe-log-meal[hidden]{display:none}.fitjoe-recipe-log-qty-label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#ccc}.fitjoe-recipe-log-qty{padding:10px;border:1px solid #555;border-radius:6px;background:#fff;color:#111;font-size:15px;min-height:44px;width:80px}.fitjoe-recipe-log-meal select{padding:10px;border:1px solid #555;border-radius:6px;background:#fff;color:#111;font-size:15px;min-height:44px}.fitjoe-recipe-log-confirm{background:#7CFF00;color:#000;border:0;border-radius:6px;padding:10px 16px;font-weight:700;cursor:pointer;min-height:44px}.fitjoe-recipe-log-confirm:hover{opacity:.88}.fitjoe-recipe-log-msg{margin-top:10px;color:#7CFF00;font-size:13px;min-height:16px}.fitjoe-recipe-empty{color:#999;font-style:italic}.fitjoe-recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin:20px 0}.fitjoe-recipe-tile{display:block;background:#161616;border:1px solid #333;border-radius:8px;overflow:hidden;text-decoration:none;color:#fff}.fitjoe-recipe-tile:hover{border-color:#7CFF00}.fitjoe-recipe-tile img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#111}.fitjoe-recipe-tile-body{padding:10px 12px}.fitjoe-recipe-tile-body strong{display:block;font-size:14px;margin-bottom:4px;color:#fff}.fitjoe-recipe-tile-body span{display:block;font-size:12px;color:#7CFF00}@media(max-width:480px){.fitjoe-recipe-macros{gap:8px}.fitjoe-recipe-macros div{flex:1 1 40%;min-width:0}.fitjoe-recipe-log-meal{display:block}.fitjoe-recipe-log-meal select,.fitjoe-recipe-log-confirm,.fitjoe-recipe-log-qty{width:100%;margin-bottom:8px;box-sizing:border-box}}.fitjoe-stars{position:relative;display:inline-block;font-size:18px;line-height:1;letter-spacing:2px;vertical-align:-2px}.fitjoe-stars-bg{color:#444}.fitjoe-stars-fg{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#7CFF00}.fitjoe-rating-summary{display:inline-flex;align-items:center;gap:8px;margin:-4px 0 14px;color:#ccc;font-size:13px;text-decoration:none}.fitjoe-rating-summary:hover .fitjoe-rating-text{text-decoration:underline}.fitjoe-rating{background:#161616;border:1px solid #333;border-radius:8px;padding:18px 20px;margin:28px 0;color:#fff;text-align:center;scroll-margin-top:80px}.fitjoe-rating-title{font-weight:700;font-size:17px;margin-bottom:10px}.fitjoe-rating-stars{display:inline-flex;gap:4px}.fitjoe-rating-star{background:none;border:0;padding:4px;font-size:36px;line-height:1;color:#444;cursor:pointer;min-width:44px;min-height:44px;transition:transform .1s,color .1s}.fitjoe-rating-star.is-on{color:#7CFF00}.fitjoe-rating-star:hover{transform:scale(1.12)}.fitjoe-rating-star:focus-visible{outline:2px solid #7CFF00;outline-offset:2px;border-radius:6px}.fitjoe-rating.is-busy{opacity:.6;pointer-events:none}.fitjoe-rating-info{color:#ccc;font-size:14px;margin-top:6px}.fitjoe-rating-msg{color:#7CFF00;font-size:13px;margin-top:6px;min-height:16px}