/* Chuť dňa — production UI polishing, Nov 2026. Last in cascade. */
.cd-public .cd-sticky-shell .cd-header{display:flex!important;align-items:center!important;gap:clamp(10px,1.6vw,24px);min-height:88px;height:auto}
.cd-public .cd-header nav{display:flex!important;align-items:center!important;gap:clamp(9px,1.3vw,19px)!important;min-width:0}
.cd-public .cd-header nav>a,.cd-public .cd-header nav>button,.cd-public .cd-header nav>details{align-self:center;flex-shrink:0}
.cd-public .cd-header nav .cd-nav-icon{margin:0!important;vertical-align:middle!important;display:inline-grid!important;place-items:center!important}
.cd-public .cd-header .cd-lang-menu{align-self:center;margin:0!important;line-height:1;flex-shrink:0}
.cd-public .cd-lang-trigger{min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap}
.cd-public .cd-header nav a,.cd-public .cd-lang-trigger{transition:color .2s ease,transform .24s ease,background .24s ease,box-shadow .24s ease}
.cd-public .cd-header nav>a:hover,.cd-public .cd-lang-trigger:hover{transform:translateY(-1px)}
.cd-public .cd-card,.cd-public .cd-recipe-card,.cd-public .cd-nutrition,.cd-public .cd-recipe-hero,.cd-public .cd-ingredients{transition:box-shadow .32s ease,transform .32s ease,border-color .28s ease}
.cd-public .cd-card:hover,.cd-public .cd-recipe-card:hover{transform:translateY(-4px);box-shadow:0 24px 45px rgba(27,65,42,.10)}
.cd-public .cd-detail-action,.cd-public .cd-lowcal-action,.cd-public .cd-button{transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.cd-public .cd-detail-action:hover,.cd-public .cd-lowcal-action:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(43,76,55,.12)}
.cd-public .cd-recipe-hero{gap:clamp(24px,4vw,72px)}
.cd-public .cd-nutrition-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 25px}
.cd-public .cd-nutrition-savings{margin-left:auto;max-width:100%;}
.cd-public .cd-nutrition-savings .cd-lowcal-savings{margin:0!important;max-width:min(460px,100%);}
.cd-public .cd-nutrition-top>small{margin-right:auto;}
.cd-public .cd-lowcal:has(.cd-lowcal-savings) .cd-lowcal-savings{display:none}
/* Shopping modal: fit to viewport, pinned toolbar and footer, accessible controls */
.cd-shopping-dialog.cd-shopping-modern{position:fixed!important;box-sizing:border-box;inset:0!important;margin:auto!important;width:min(620px,calc(100vw - 24px))!important;max-height:min(820px,calc(100dvh - 28px))!important;height:min(820px,calc(100dvh - 28px));padding:0!important;border:1px solid #e0eae2!important;border-radius:26px!important;overflow:hidden!important;color:#18372b;background:#fff;box-shadow:0 32px 90px rgba(15,31,23,.24);display:none;flex-direction:column;animation:cd-modal-in .26s cubic-bezier(.2,.8,.2,1)}
.cd-shopping-dialog.cd-shopping-modern[open]{display:flex!important;}
.cd-shopping-dialog.cd-shopping-modern::backdrop{background:rgba(19,36,28,.54);backdrop-filter:blur(7px)}
.cd-shopping-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 28px 20px;background:#fff;flex:none;border-bottom:1px solid #e8eee9}
.cd-shopping-heading h2{margin:0!important;font-size:clamp(24px,3.5vw,30px);line-height:1.16;font-weight:750;letter-spacing:-.6px}
.cd-shopping-count{margin:7px 0 0;color:#6a8072;font-size:13px}
.cd-shopping-close{appearance:none;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid #dbe7df;background:#f7faf7;color:#234f3a;cursor:pointer;font-size:27px;line-height:1;flex:none;transition:transform .18s,background .18s}
.cd-shopping-close:hover{background:#e7f1e9;transform:rotate(90deg)}
.cd-shopping-items{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1 1 auto;padding:7px 28px 14px;scrollbar-color:#b7d3bf transparent}
.cd-shopping-dialog .cd-shopping-row{padding:14px 0!important;display:flex;align-items:center;gap:16px;border-bottom:1px solid #e7eee8}
.cd-shopping-label{display:flex;align-items:flex-start;gap:13px;flex:1;min-width:0;cursor:pointer;font-size:15px;line-height:1.5;color:#20382c}
.cd-shopping-label input{appearance:none;display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;margin:2px 0 0;border:1.5px solid #9bbca7;border-radius:7px;cursor:pointer;background:#fff;transition:all .18s}
.cd-shopping-label input:checked{background:#397a59;border-color:#397a59}
.cd-shopping-label input:checked:after{content:'✓';color:white;font-weight:800;font-size:14px}
.cd-shopping-row.is-done .cd-shopping-label span{color:#83948a;text-decoration:line-through;text-decoration-thickness:1px}
.cd-shopping-dialog .cd-shopping-remove{display:grid;place-items:center;width:34px;height:34px;flex:none;padding:0!important;border-radius:10px!important;background:#fff;color:#627f6d;font-size:18px;line-height:1}
.cd-shopping-dialog .cd-shopping-remove:hover{background:#fff0ec;border-color:#edc5b8;color:#b45336}
.cd-shopping-footer{display:grid;gap:12px;padding:16px 28px 22px;border-top:1px solid #e5eee7;background:#fbfdfb;flex:none}
.cd-shopping-tools{display:flex;flex-wrap:wrap;gap:8px}
.cd-shopping-dialog .cd-shopping-control{border:1px solid #d8e6db;background:white;color:#315942;border-radius:12px;padding:10px 12px;font-weight:650;font-size:12px;cursor:pointer;transition:background .2s,transform .2s}
.cd-shopping-dialog .cd-shopping-control:hover:not(:disabled){background:#eef6ef;transform:translateY(-1px)}
.cd-shopping-dialog .cd-shopping-control.is-danger{color:#b6513e}
.cd-shopping-dialog .cd-shopping-control.is-danger:hover{background:#fff1ec}
.cd-shopping-dialog .cd-shopping-control.is-primary{border-color:#315f46;background:#315f46;color:white;padding:13px 18px;font-size:14px}
.cd-shopping-dialog .cd-shopping-control:disabled{opacity:.45;cursor:not-allowed}
.cd-shopping-empty{text-align:center;padding:50px 10px;color:#6c8072}
.cd-shopping-dialog button:focus-visible,.cd-shopping-dialog input:focus-visible{outline:3px solid #f58b64;outline-offset:3px}
.cd-image-reveal:not(.cd-image-inview){opacity:.45;filter:blur(5px);transform:scale(1.015)}
.cd-image-reveal{transition:opacity .48s ease,filter .48s ease,transform .48s ease}
.cd-image-reveal.cd-image-inview{opacity:1;filter:blur(0);transform:scale(1)}
@keyframes cd-modal-in{from{opacity:0;transform:translateY(16px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:640px){.cd-shopping-dialog.cd-shopping-modern{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 18px)!important;height:calc(100dvh - 18px);border-radius:21px!important}.cd-shopping-head{padding:20px}.cd-shopping-items{padding:6px 20px}.cd-shopping-footer{padding:14px 20px 18px}.cd-public .cd-header nav{gap:8px!important}.cd-public .cd-lang-trigger{min-height:44px;padding:8px!important}.cd-public .cd-nutrition-savings{width:100%;margin:0}}
@media(prefers-reduced-motion:reduce){.cd-shopping-dialog.cd-shopping-modern,.cd-public .cd-card,.cd-public .cd-detail-action,.cd-image-reveal{animation:none!important;transition:none!important;transform:none!important}}
@media print{.cd-shopping-dialog,.cd-shopping-modern{display:none!important}.cd-public .cd-nutrition-savings{display:none!important}}

/* UX polish round 2: nutrition comparison, header, shopping actions. */
.cd-public .cd-nutrition-top{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px 24px!important;align-items:center!important;justify-content:stretch!important;min-height:98px}
.cd-public .cd-nutrition-headline{display:flex;flex-direction:column;gap:5px;min-width:0}
.cd-public .cd-nutrition-headline h2{line-height:1.15!important;margin:0!important}
.cd-public .cd-nutrition-headline small{font-size:12px!important;line-height:1.4;white-space:normal;margin:0!important;color:#6b786e}
.cd-public .cd-nutrition-savings{grid-column:2!important;grid-row:1!important;margin:0!important;justify-self:end!important;max-width:100%!important}
.cd-public .cd-nutrition-savings .cd-lowcal-savings{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;padding:12px 15px!important;max-width:365px!important;min-width:240px!important;flex-basis:auto!important;border-radius:18px!important}
.cd-public .cd-nutrition-savings .cd-lowcal-savings-icon{width:42px!important;height:42px!important;flex:0 0 42px!important}
.cd-public .cd-nutrition-savings .cd-lowcal-savings-copy{display:flex!important;gap:3px!important;flex-direction:column!important;text-align:left!important}
.cd-public .cd-nutrition-savings .cd-lowcal-savings-label{font-size:11px!important;line-height:1.3!important;max-width:210px}
.cd-public .cd-nutrition-savings .cd-lowcal-savings-value{font-size:22px!important;line-height:1.2!important}
.cd-public .cd-nutrition-savings .cd-lowcal-savings-percent{margin-left:auto!important;align-self:center!important}
.cd-public .cd-sticky-shell .cd-header{justify-content:flex-start!important}
.cd-public .cd-sticky-shell .cd-header nav{justify-content:flex-start!important;margin-left:0!important;margin-right:0!important;flex:0 1 auto!important}
.cd-public .cd-sticky-shell .cd-header .cd-lang-menu{margin-left:auto!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control,
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control:visited{color:#315942!important;background:#fff!important;border-color:#d8e6db!important;box-shadow:none!important;text-decoration:none!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control:hover:not(:disabled){color:#16412f!important;background:#e5f1e8!important;border-color:#a7cbb1!important;transform:translateY(-1px)!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control.is-danger{color:#a9412c!important;background:#fff8f5!important;border-color:#edc8c0!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control.is-danger:hover:not(:disabled){color:#92311f!important;background:#ffe7de!important;border-color:#eb9d88!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control.is-primary{background:#275941!important;color:#fff!important;border-color:#275941!important;width:100%!important;text-align:center!important}
.cd-shopping-dialog.cd-shopping-modern .cd-shopping-control.is-primary:hover:not(:disabled){background:#163f2c!important;border-color:#163f2c!important;color:#fff!important}
@media(max-width:760px){.cd-public .cd-nutrition-top{grid-template-columns:1fr!important}.cd-public .cd-nutrition-savings{grid-column:1!important;grid-row:2!important;justify-self:stretch!important}.cd-public .cd-nutrition-savings .cd-lowcal-savings{max-width:100%!important}.cd-public .cd-sticky-shell .cd-header nav{min-width:0!important}.cd-public .cd-sticky-shell .cd-header .cd-lang-menu{margin-left:auto!important}}
@media print{.cd-public .cd-nutrition-savings{display:none!important}}

/* Header alignment: navigation right next to the language picker (desktop). */
@media (min-width: 821px) {
  .cd-public .cd-sticky-shell .cd-header nav {
    margin-left: auto !important;
    margin-right: 0 !important;
    justify-content: flex-end !important;
    flex: 0 0 auto !important;
  }
  .cd-public .cd-sticky-shell .cd-header .cd-lang-menu {
    margin-left: 0 !important;
  }
}
@media (max-width: 820px) {
  .cd-public .cd-sticky-shell .cd-header nav {
    margin-left: auto !important;
    justify-content: flex-end !important;
  }
  .cd-public .cd-sticky-shell .cd-header .cd-lang-menu {
    margin-left: 0 !important;
  }
}
