/* v2.4: gift notes, gift card printing, wine add-ons. Uses the v2.3.2 warm palette; nothing above is changed. */
.wph24{width:100%;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:linear-gradient(180deg,#efe4d3,#e8dbc6);color:#26211d;text-align:center;padding:10px}
.wph24 .btl24{height:58%;width:auto;filter:drop-shadow(0 2px 0 rgba(0,0,0,.06))}
.wph24 b{font-family:var(--serif,"Fredoka",sans-serif);font-size:14px;line-height:1.2}
.wph24 span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#6e6256}
.wph24.sm{width:64px;height:64px;aspect-ratio:auto;border-radius:12px;padding:6px;flex:0 0 64px}
.wph24.sm .btl24{height:100%}
.bagi .wph24.sm{margin-right:2px}
.up24{margin:16px 0 4px;background:#fbf7f0;border:1px solid #e2d5c1;border-radius:16px;padding:14px}
.up24h{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.up24i{width:36px;height:36px;border-radius:50%;background:#efe4d3;color:#a63a22;display:flex;align-items:center;justify-content:center}
.up24i .lic{width:20px;height:20px}
.up24r{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.up24c{background:var(--b-white,#fff);border:1px solid #e2d5c1;border-radius:12px;padding:8px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;min-width:0}
.up24c .wph24.sm{width:100%;height:76px;flex:none}
.up24n{font-size:12.5px;font-weight:600;line-height:1.25;min-height:32px;display:flex;align-items:center}
.up24p{font-weight:700;color:#a63a22}
.up24c .btn.sm{min-height:34px;padding:0 10px;font-size:13px;width:100%}
.lnk24{background:none;border:0;color:#a63a22;font-weight:700;padding:10px 0 0;font-size:14px}
.fine24{font-size:12px;color:#6e6256;margin:8px 0 0}
.wn24{display:flex;gap:10px;align-items:center;background:#fbf2ec;border:1px solid #e9c9b9;color:#5a2416;border-radius:14px;padding:12px;margin:12px 0}
.wn24 .lic{color:#a63a22;flex:none}
.wn24 .btn.sm{flex:none}
.wa24{margin:8px 0 0}
.wnote24{display:flex;gap:8px;align-items:flex-start;background:#efe4d3;border-radius:12px;padding:10px 12px;margin:10px 0;font-size:14px;color:#26211d}
.wnote24 .lic{color:#a63a22;flex:none;margin-top:1px}
.gift24 .g24t{display:flex;align-items:center;gap:12px;cursor:pointer}
.gift24 .g24t b{display:block;font-size:16px}.gift24 .g24t .small{display:block}
.sw24{appearance:none;-webkit-appearance:none;width:50px;height:30px;border-radius:30px;background:#d9cbb6;position:relative;flex:none;transition:background .15s;margin:0}
.sw24::after{background:var(--b-white,#fff)!important;content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:var(--b-white,#fff);box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
.sw24:checked{background:#a63a22}.sw24:checked::after{transform:translateX(20px)}
.sw24{background:#d9cbb6!important;border:0!important;min-height:0!important;padding:0!important}
.sw24:checked{background:#a63a22!important}
.sw24:focus-visible{outline:3px solid rgba(166,58,34,.35);outline-offset:2px}
.g24f{margin-top:6px}
.g24f .grid2{gap:10px}
.g24f textarea{resize:vertical;min-height:96px;font-family:inherit;line-height:1.4}
.g24n{text-align:right;font-size:12px;color:#6e6256;margin-top:4px}.g24n.hi{color:#a63a22;font-weight:700}
.chk24{display:flex;gap:12px;align-items:flex-start;margin-top:12px;cursor:pointer}
.chk24 input{width:22px;height:22px;flex:none;margin:1px 0 0;accent-color:#a63a22}
.chk24 b{display:block}.chk24 .small{display:block}
.age24 .chk24{margin-top:0}
.age24.need24{border-color:#a63a22;box-shadow:0 0 0 3px rgba(166,58,34,.15)}
.gd24{display:flex;gap:8px;align-items:flex-start;margin:10px 0}
.gd24 .lic{color:#a63a22;flex:none}
.gb24{background:#efe4d3;color:#8e2f1a;display:inline-flex;align-items:center;gap:4px}
.gb24 .lic{width:13px;height:13px}
.gb24w{margin:2px 0 4px}
.btn.pc24{background:#a63a22}
.pbar24{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.sz24{display:inline-flex}
.sz24 button{min-height:36px;padding:0 12px;font-size:14px}
.cprev24{display:flex;justify-content:center;padding:14px 0;margin:6px 0 4px;background:#e8dbc6;border-radius:16px;overflow:hidden}
.cprev24 .jbs-card{box-shadow:0 1px 2px rgba(38,33,29,.12),0 8px 24px rgba(38,33,29,.12)}
@media screen and (max-width:430px){.cprev24 .jbs-card{zoom:.86}}
.act24{margin-top:12px}.act24 .grid2{margin-top:10px;gap:10px}.act24 .grid2 .btn{min-width:0;font-size:15px}
.sec24{margin-top:22px}.gme24{margin-bottom:12px}
/* dark mode inverts the page once (v2.0); things that must look like themselves are inverted back */
html.dk20 .wph24,html.dk20 .cprev24 .jbs-card,html.dk20 .sw24{filter:invert(1) hue-rotate(180deg)}
@media print{
 body.card24 .top,body.card24 .tabs,body.card24 .noprint,body.card24 .bn20,body.card24 .toast,body.card24 #splash,body.card24 .scrim{display:none!important}
 body.card24,body.card24 #app,body.card24 main{background:var(--b-white,#fff)!important;margin:0!important;padding:0!important;max-width:none!important;min-height:0!important}
 body.card24 .cprev24{display:block;margin:0!important;padding:0!important;background:none!important;border-radius:0!important}
 body.card24 .cprev24 .jbs-card{zoom:1!important;box-shadow:none!important;margin:0!important;page-break-after:avoid;break-after:avoid}
}
