:root { --ink:#11284b; --aqua:#12a9ed; --aqua-dim:#0874cf; --panel:#ffffffd9; --panel-border:#9cddff; --text:#14284b; --text-dim:#58718b; }
html,body { background:#eaf7ff; color:var(--text); font-family:ui-rounded,"Avenir Next","Segoe UI",Arial,sans-serif; overflow-x:clip; }
body { position:relative; width:min(100%,480px); min-height:100vh; padding:20px 16px 28px; overflow-x:hidden; background:linear-gradient(180deg,#dff3ff 0%,#f8fdff 38%,#e8f7ff 100%); }
body::before { content:""; position:fixed; z-index:0; inset:auto 0 0; height:135px; pointer-events:none; opacity:.48; background:radial-gradient(120% 100% at 50% 100%,#93d9ff 0 22%,transparent 23%),radial-gradient(95% 100% at 10% 105%,#bdeaff 0 34%,transparent 35%),linear-gradient(180deg,transparent,#c8ecff); }
body > * { position:relative; z-index:1; }
.brand-header { position:relative; z-index:2; display:block; height:142px; margin:0 0 10px; overflow:visible; }
.brand-copy { position:relative; z-index:2; display:flex; align-items:center; gap:10px; width:66%; padding-top:14px; }
.brand-ring { width:66px; height:66px; }
.brand-title h1 { margin:0; color:#10274b; font-size:25px; line-height:1.02; font-weight:800; letter-spacing:-.8px; }
.brand-title h1 span { color:#10274b; } .brand-title h1 sup { font-size:9px; vertical-align:top; }
.brand-title h1 b { color:#0aa5ec; }
.tagline { margin:9px 0 0; color:#14284b; font-size:8px; letter-spacing:1.8px; font-weight:800; line-height:1.55; white-space:nowrap; }
/* Full product image to the right of the buttons: whole bottle, no mask, fade or overlap. */
.skin-hero { position:absolute; right:0; top:40px; z-index:1; width:var(--hero-w); height:auto; aspect-ratio:380/492; object-fit:contain; border-radius:12px; }
.gel-entry-hitarea { position:absolute; z-index:5; top:40px; right:0; width:var(--hero-w); aspect-ratio:380/492; border-radius:12px; background:transparent; text-decoration:none; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
.gel-entry-hitarea:focus-visible { outline:2px solid #087fc0; outline-offset:2px; }
/* Buttons end a clear gap before the image; arrows stay inside. */
.home-nav { position:relative; z-index:2; display:flex; flex-direction:column; gap:8px; width:calc(100% - var(--hero-w) - 12px); margin:-28px 0 10px; }
.home-nav .home-btn { display:flex; align-items:center; gap:8px; text-align:left; padding:8px 8px 8px 10px; margin:0; min-height:58px; width:100%; min-width:0; border:1.5px solid #8cddff; border-bottom:2px solid #76d4ff; border-radius:20px; color:#13294d; background:linear-gradient(110deg,#e5f8ff,#fff); box-shadow:0 6px 17px #56bff033; font-size:15px; line-height:1.12; }
.home-nav .home-btn:active { margin:0; border-bottom-width:2px; transform:translateY(1px); }
.home-nav .home-btn.shipments { background:linear-gradient(110deg,#fffaf0,#fff); border-color:#ffe19a; border-bottom-color:#ffd16c; box-shadow:0 6px 17px #f4b54824; }
.nav-icon { display:block; flex:none; width:30px; height:30px; color:#08a8ec; line-height:1; }
.amazon-icon { width:34px; height:30px; }
.home-nav .home-btn > span:not(.nav-chevron) { min-width:0; }
.nav-primary { color:#13294d; font-size:14px; font-weight:800; white-space:nowrap; }
.nav-accent { color:#069fe8; font-size:16.5px; font-weight:800; white-space:nowrap; }
.shipments .nav-accent { color:#f39a00; }
.home-nav .home-btn.receipts { background:linear-gradient(110deg,#effbf4,#fff); border-color:#a6e9c1; border-bottom-color:#7fdca5; box-shadow:0 6px 17px #3cc27a24; }
.receipts .nav-icon, .receipts .nav-accent { color:#16a35a; }
.nav-chevron { flex:none; margin-left:auto; font-size:26px; line-height:1; color:#13294d; }
#inventoryChat { position:relative; display:flex; flex-direction:column; padding:0; border:0; background:transparent; box-shadow:none; }
.reply-panel { display:flex; flex-direction:column; height:345px; min-height:345px; padding:14px; border:1.5px solid #96ddff; border-radius:24px; background:#ffffffd9; box-shadow:0 5px 18px #54b8e833; }
#inventoryChat .conversation-label { margin:0; height:0; overflow:hidden; }
.health-pill { align-self:flex-end; display:flex; align-items:center; gap:9px; min-height:52px; margin:0 0 10px; padding:7px 13px; border-radius:16px; color:#168b4c; background:#ddf9e9; font-size:12px; }
.health-pill strong,.health-pill time { display:block; white-space:nowrap; }
.health-pill time { font-size:11px; opacity:.85; }
.health-dot { display:block; width:13px; height:13px; flex:none; border-radius:50%; background:#14ad63; box-shadow:0 0 0 4px #14ad6318; }
.health-pill[data-state="idle"] .health-dot { animation:health-breathe 2.5s ease-in-out infinite; }
.health-pill[data-state="active"] .health-dot { background:#f0ae10; box-shadow:0 0 0 4px #f0ae1018; animation:health-breathe 1s ease-in-out infinite; }
.health-pill[data-state="error"] { color:#aa3333; background:#ffeded; }
.health-pill[data-state="error"] .health-dot { background:#d84747; }
.health-pill[data-state="unknown"] .health-dot { background:#8a9aa8; animation:health-breathe 2.5s ease-in-out infinite; }
@keyframes health-breathe { 50% { opacity:.48; transform:scale(.78); } }
#inventoryReply.conversation-box { width:100%; flex:1; min-height:190px; margin:0; padding:12px; border:0; border-radius:16px; background:#ffffffab; color:#14284b; font-size:16px; }
#inventoryReply:empty::before { display:none; }
#inventoryMessage.conversation-box { width:100%; min-height:84px; height:84px; margin:10px 0 0; border:1.5px solid #9edfff; border-radius:18px; background:#fff; color:#14284b; box-shadow:0 4px 14px #53b9e82b; }
#inventoryMessage::placeholder { color:#7790a7; }
#inventoryChat > label,#inventoryChat > small { color:#607990; }
#inventoryChat > label[for="inventoryMessage"] { margin:8px 0 3px; }
#inventoryChat > small { line-height:1.4; }
.shopping-print:empty { display:none; }
.shopping-print:has(#shoppingPrintLink[hidden]) { display:none; }
.shopping-print a { display:inline-flex; min-height:48px; align-items:center; color:#087fc0; }
#conversationPending { position:relative; z-index:3; color:#172d49; border:1px solid #f0c45b; background:#fff9e9; }
#conversationPending button,#casePhotoPanel button,#amazonPhotoPanel button { min-height:48px!important; }
button,a,summary,select { touch-action:manipulation; }
button { min-height:48px!important; }
@media (max-width:390px) { body { padding-left:15px; padding-right:15px; } .brand-header { height:145px; } .brand-copy { width:72%; gap:7px; } .brand-ring { width:57px; height:57px; } .brand-title h1 { font-size:22px; } .tagline { font-size:7px; letter-spacing:1.5px; } .home-nav .home-btn { padding:8px 6px 8px 8px; gap:6px; } .nav-icon { width:26px; } .amazon-icon { width:30px; } .nav-accent { font-size:15.5px; } .nav-chevron { font-size:24px; } }
@media (min-width:600px) { body { margin:24px auto; border-radius:24px; box-shadow:0 12px 46px #60bce322; } .brand-header { height:170px; } }

/* ---- Home screen as a fixed app screen: no page scroll, bounce or sideways drag; only the chat scrolls. ---- */
:root { --hero-w:47%; }
html { -webkit-text-size-adjust:100%; }
/* iOS zooms the whole page when a field under 16px is focused; a zoomed page then drags in every direction. */
input,select,textarea { font-size:max(16px,1em); }
html.home-locked, html.home-locked body { overflow:hidden; overscroll-behavior:none; }
html.home-locked body { position:fixed; top:0; bottom:0; left:0; right:0; margin:0 auto; width:100%; max-width:480px; height:100vh; height:100dvh; min-height:0; display:flex; flex-direction:column; touch-action:pan-y;
  padding:calc(8px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left)); }
html.home-locked body > * { flex:none; }
html.home-locked #home.active { flex:1 1 auto; min-height:0; display:flex; flex-direction:column; }
html.home-locked .home-nav { flex:none; }
html.home-locked .amazon-stock-link { flex:none; margin:2px 0 8px; }
html.home-locked #inventoryChat { flex:1 1 auto; min-height:0; }
html.home-locked #inventoryChat > * { flex:none; }
html.home-locked #inventoryChat > .reply-panel { order:1; flex:1 1 auto; height:auto; min-height:96px; padding:10px; }
html.home-locked #inventoryReply.conversation-box { flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; touch-action:pan-y; }
html.home-locked .shopping-print,html.home-locked #heartStatus,html.home-locked #chatRequestStatus,html.home-locked #chatRetry,html.home-locked #conversationPending,html.home-locked #casePhotoPanel { order:2; }
html.home-locked #conversationPending { max-height:42%; overflow-y:auto; overscroll-behavior:contain; }
html.home-locked #inventoryChat > label[for="inventoryMessage"],html.home-locked .composer { order:3; }
html.home-locked #inventoryMessage.conversation-box { height:64px; min-height:64px; resize:none; }
.chat-top { display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px; margin-bottom:8px; }
.chat-top .health-pill { margin:0 0 0 auto; min-height:44px; padding:5px 11px; }
.new-chat,.voice-toggle { min-height:44px!important; padding:0 12px; border:1px solid #b7e4fb; border-radius:14px; background:#fff; color:#17507f; font:inherit; font-size:13px; font-weight:700; }
.voice-toggle { display:inline-flex; align-items:center; gap:6px; }
.voice-toggle svg { width:20px; height:20px; flex:none; }
.voice-toggle .voice-off-icon,.voice-toggle.off .voice-on-icon { display:none; }
.voice-toggle.off .voice-off-icon { display:block; }
.voice-toggle.off { color:#6b7f92; background:#f1f5f8; border-color:#d3dde5; }
/* Round blue send arrow sits inside the message box, bottom right; text never runs under it. */
.composer { position:relative; }
#inventoryMessage.conversation-box { padding-right:58px; }
.send-arrow { position:absolute; right:9px; top:calc(50% + 5px); transform:translateY(-50%); display:flex; align-items:center; justify-content:center; width:40px; height:40px; min-height:40px!important; padding:0!important; border:0; border-radius:50%!important; color:#fff; background:linear-gradient(145deg,#04a3f4,#0868c9); box-shadow:0 4px 10px #0868c944; }
.send-arrow svg { width:22px; height:22px; }
.send-arrow:active { transform:translateY(-50%) scale(.94); }
/* The logo is the receipt camera: same look, a gentle press. */
.logo-camera { flex:none; display:block; min-height:0!important; margin:0; padding:0; border:0; border-radius:50%; background:none; line-height:0; transition:transform .12s ease,opacity .12s ease; }
.logo-camera:active { transform:scale(.92); opacity:.75; }
.logo-camera:focus-visible { outline:2px solid #087fc0; outline-offset:2px; }
.quick-links { display:flex; flex-wrap:wrap; align-items:center; margin:-4px 0 8px; font-size:13px; }
.quick-links a { padding:4px 0; color:#087fc0; text-decoration:none; }
.quick-links a + a::before { content:"\00b7"; margin:0 9px; color:#9fb7c1; }
html.home-locked .quick-links { flex:none; }
.receipt-sheet:not([hidden]) { position:fixed; inset:0; z-index:900; display:flex; align-items:flex-end; justify-content:center; padding:12px; background:#0d1b26b8; }
.receipt-card { position:relative; width:100%; min-width:0; max-width:460px; max-height:100%; overflow-y:auto; padding:16px 16px calc(16px + env(safe-area-inset-bottom)); border-radius:24px; background:#fff; color:#14284b; box-shadow:0 12px 40px #0d1b2655; }
.receipt-card h2 { margin:4px 0 12px; font-size:18px; }
#receiptPreview { display:block; width:100%; max-height:46vh; object-fit:contain; border-radius:14px; background:#eef6fb; }
.receipt-card label { display:block; margin:12px 0 4px; color:#58718b; font-size:14px; font-weight:650; }
#receiptNote { width:100%; padding:11px 12px; border:1.5px solid #9edfff; border-radius:14px; color:#14284b; font:inherit; font-size:16px; }
.receipt-actions { display:flex; gap:10px; margin-top:14px; }
.receipt-actions button { flex:1; border-radius:16px; font:inherit; font-size:16px; font-weight:750; }
.receipt-retake { border:1.5px solid #b7e4fb; background:#fff; color:#17507f; }
.receipt-send { border:0; color:#fff; background:linear-gradient(145deg,#04a3f4,#0868c9); }
.receipt-send:disabled { opacity:.55; }
.receipt-close { position:absolute; top:6px; right:6px; width:44px; min-height:44px!important; border:0; background:none; color:#58718b; font-size:28px; line-height:1; }
#receiptStatus:empty { display:none; }
/* Receipt thumbnails under a chat reply; tap for the full photo. */
.receipt-strip { display:flex; gap:8px; margin-top:10px; padding-bottom:4px; overflow-x:auto; white-space:normal; }
#inventoryChat .receipt-thumb { flex:none; display:flex; flex-direction:column; gap:4px; width:118px; min-height:0!important; padding:4px; border:1px solid #b7e4fb; border-radius:12px; background:#fff; color:#14284b; font-size:11.5px; line-height:1.25; text-align:left; overflow-wrap:anywhere; }
.receipt-thumb img { display:block; width:100%; height:118px; object-fit:cover; border-radius:8px; }
#inventoryReply { white-space:pre-line; }
/* Short screens (iPhone SE/mini with Safari bars): tighten the header, never the bottom buttons. */
@media (max-height:640px) { html.home-locked .brand-header { height:118px; margin-bottom:6px; } html.home-locked .brand-copy { padding-top:6px; } html.home-locked .brand-ring { width:48px; height:48px; } html.home-locked .brand-title h1 { font-size:20px; } html.home-locked .tagline { margin-top:5px; }
  :root { --hero-w:40%; } .skin-hero,.gel-entry-hitarea { top:30px; } html.home-locked .home-nav { margin-top:-30px; gap:6px; } html.home-locked .home-nav .home-btn { min-height:50px; }
  html.home-locked .amazon-stock-link { margin:0 0 6px; font-size:14px; } html.home-locked #inventoryMessage.conversation-box { height:52px; min-height:52px; } html.home-locked .chat-top .health-pill strong { display:none; } }
@media (prefers-reduced-motion:reduce) { .health-dot { animation:reduced-breathe 2.5s ease-in-out infinite!important; } .confetti-piece,.balloon-piece,.bubble-piece,.sparkle-piece { animation:none!important; opacity:0!important; } @keyframes reduced-breathe { 50% { opacity:.76; } } }


/* Compact home shortcuts: keep their stack level with the unchanged bottles,
   then give the released height to the flexible conversation panel. */
html.home-locked .brand-header {
  height:max(254px, calc(40px + (min(100vw, 480px) - 32px) * .6085263));
  margin-bottom:10px;
}
html.home-locked .home-nav { margin-top:-150px; gap:4px; }
html.home-locked .home-nav .home-btn {
  flex:none; height:44px; min-height:44px!important;
  padding:4px 6px; gap:6px; border-radius:16px;
}
html.home-locked .home-nav .nav-icon { width:22px; height:22px; }
html.home-locked .home-nav .amazon-icon { width:26px; }
html.home-locked .home-nav .nav-primary { font-size:12px; }
html.home-locked .home-nav .nav-accent { font-size:14px; }
html.home-locked .home-nav .nav-chevron { font-size:22px; }
@media (max-height:640px) {
  html.home-locked .brand-header {
    height:max(224px, calc(30px + (min(100vw, 480px) - 32px) * .5178947));
  }
}

/* Owner's second compact layout: 75% shortcuts and one compact links row. */
html.home-locked .home-nav {
  width:calc((100% - var(--hero-w) - 12px) * .75);
  margin:-150px 0 39px; gap:3px;
}
html.home-locked .home-nav .home-btn {
  height:33px; min-height:33px!important; padding:3px 4.5px;
  gap:4.5px; border-radius:12px; font-size:10.5px; line-height:1.02;
}
html.home-locked .home-nav .nav-icon { width:16.5px; height:16.5px; }
html.home-locked .home-nav .amazon-icon { width:19.5px; }
html.home-locked .home-nav .nav-primary { font-size:9px; }
html.home-locked .home-nav .nav-accent { font-size:10.5px; }
html.home-locked .home-nav .nav-chevron { font-size:16.5px; }
.home-links { display:flex; flex:none; align-items:center; gap:12px; margin:0 0 6px; line-height:1.4; white-space:nowrap; }
html.home-locked .home-links .amazon-stock-link { margin:0; font-size:12px; }
.home-links .products-link { color:#087fc0; font-size:13px; text-decoration:none; }
/* Half-size Voice/New chat controls, with the smaller status pill on one line. */
html.home-locked .chat-top { flex-wrap:nowrap; align-items:center; gap:4px; margin-bottom:4px; }
#inventoryChat .voice-toggle, #inventoryChat .new-chat {
  min-height:22px!important; height:22px; padding:0 6px;
  border-radius:7px; font-size:8px; gap:3px; white-space:nowrap;
}
#inventoryChat .voice-toggle svg { width:10px; height:10px; }
html.home-locked .chat-top .health-pill {
  align-self:center; min-height:26px; padding:3px 7px; gap:5px;
  border-radius:8px; font-size:9px; line-height:1.05;
}
html.home-locked .chat-top .health-pill time { font-size:8.25px; }
html.home-locked .chat-top .health-pill strong { display:block; }
html.home-locked .chat-top .health-dot { width:7px; height:7px; box-shadow:0 0 0 2px #14ad6318; }

@media (max-height:640px) {
  html.home-locked .home-links .amazon-stock-link { font-size:10.5px; }
  /* The smaller shortcuts also free the spare space below short-screen bottles. */
  html.home-locked .home-nav {
    margin-bottom:max(4px, calc((min(100vw, 480px) - 32px) * .5178947 - 159px));
  }
}

/* Third owner adjustment: 105% shortcuts, links just below the bottles,
   and 130% chat controls. The shortcuts share the header's height. */
html.home-locked {
  --home-masthead-height:max(224.25px, calc(40px + (min(100vw, 480px) - 32px) * .6085263));
  --home-shortcut-top:max(114px, calc((min(100vw, 480px) - 32px) * .6085263 - 100px));
}
html.home-locked .brand-header { height:var(--home-masthead-height); margin-bottom:2px; }
html.home-locked #home { position:relative; z-index:3; }
html.home-locked .home-nav {
  position:absolute; top:calc(var(--home-shortcut-top) - var(--home-masthead-height) - 2px); bottom:auto;
  width:calc((100% - var(--hero-w) - 12px) * .7875);
  margin:0; gap:3.15px;
}
html.home-locked .home-nav .home-btn {
  height:34.65px; min-height:34.65px!important; padding:3.15px 4.725px;
  gap:4.725px; border-radius:12.6px; font-size:11.025px;
}
html.home-locked .home-nav .nav-icon { width:17.325px; height:17.325px; }
html.home-locked .home-nav .amazon-icon { width:20.475px; }
html.home-locked .home-nav .nav-primary { font-size:9.45px; }
html.home-locked .home-nav .nav-accent { font-size:11.025px; }
html.home-locked .home-nav .nav-chevron { font-size:17.325px; }
.home-links { margin-bottom:2px; line-height:1.2; }
html.home-locked .chat-top { margin-bottom:2px; }
#inventoryChat .voice-toggle, #inventoryChat .new-chat {
  min-height:28.6px!important; height:28.6px; padding:0 7.8px;
  border-radius:9.1px; font-size:10.4px; gap:3.9px;
}
#inventoryChat .voice-toggle svg { width:13px; height:13px; }
html.home-locked .chat-top .health-pill {
  min-height:33.8px; padding:3.9px 9.1px; gap:6.5px;
  border-radius:10.4px; font-size:11.7px;
}
html.home-locked .chat-top .health-pill time { font-size:10.725px; }
html.home-locked .chat-top .health-dot { width:9.1px; height:9.1px; }
@media (max-height:640px) {
  html.home-locked {
    --home-masthead-height:max(194.25px, calc(30px + (min(100vw, 480px) - 32px) * .5178947));
    --home-shortcut-top:max(84px, calc((min(100vw, 480px) - 32px) * .5178947 - 110px));
  }
}

/* Fourth owner adjustment: compact brand at the safe top edge, no tagline,
   110% shortcuts immediately below the logo and matched 115% chat buttons. */
html.home-locked body { padding-top:calc(4px + env(safe-area-inset-top)); }
html.home-locked {
  --home-masthead-height:max(193.275px, calc(22px + (min(100vw, 480px) - 32px) * .6085263));
  --home-shortcut-top:72px;
}
html.home-locked .brand-copy { padding-top:0; }
html.home-locked .skin-hero, html.home-locked .gel-entry-hitarea { top:22px; }
html.home-locked .home-nav { width:calc((100% - var(--hero-w) - 12px) * .86625); gap:3.465px; }
html.home-locked .home-nav .home-btn {
  height:38.115px; min-height:38.115px!important; padding:3.465px 5.1975px;
  gap:5.1975px; border-radius:13.86px; font-size:12.1275px;
}
html.home-locked .home-nav .nav-icon { width:19.0575px; height:19.0575px; }
html.home-locked .home-nav .amazon-icon { width:22.5225px; }
html.home-locked .home-nav .nav-primary { font-size:10.395px; }
html.home-locked .home-nav .nav-accent { font-size:12.1275px; }
html.home-locked .home-nav .nav-chevron { font-size:19.0575px; }
#inventoryChat .voice-toggle, #inventoryChat .new-chat {
  width:70px; flex:0 0 70px; min-height:32.89px!important; height:32.89px;
  padding:0 6px; border-radius:10.465px; font-size:11.96px; gap:4.485px;
  justify-content:center;
}
#inventoryChat .voice-toggle svg { width:14.95px; height:14.95px; }
@media (max-width:390px) {
  html.home-locked {
    --home-masthead-height:max(184.275px, calc(22px + (min(100vw, 480px) - 32px) * .6085263));
    --home-shortcut-top:63px;
  }
}
@media (max-height:640px) {
  html.home-locked {
    --home-masthead-height:max(175.275px, calc(14px + (min(100vw, 480px) - 32px) * .5178947));
    --home-shortcut-top:54px;
  }
  html.home-locked .skin-hero, html.home-locked .gel-entry-hitarea { top:14px; }
}

/* Fifth owner adjustment: scale only the bottle image and its touch target
   to 80%, reclaiming header height while preserving shortcut clearance. */
html.home-locked .skin-hero, html.home-locked .gel-entry-hitarea { width:calc(var(--hero-w) * .8); }
html.home-locked {
  --home-masthead-height:max(193.275px, calc(22px + (min(100vw, 480px) - 32px) * .48682104));
}
@media (max-width:390px) {
  html.home-locked {
    --home-masthead-height:max(184.275px, calc(22px + (min(100vw, 480px) - 32px) * .48682104));
  }
}
@media (max-height:640px) {
  html.home-locked {
    --home-masthead-height:max(175.275px, calc(14px + (min(100vw, 480px) - 32px) * .41431576));
  }
}

/* The brand name is a Home link; keep the existing brand appearance. */
.brand-title .brand-home { display:block; color:inherit; text-decoration:none; }
.brand-title .brand-home:focus-visible { outline:2px solid #087fc0; outline-offset:3px; border-radius:4px; }
.product-choices { display:flex; flex-wrap:wrap; gap:6px; flex:0 1 auto; max-height:48%; overflow-y:auto; padding:4px; }
.product-choices[hidden] { display:none; }
.product-choices button { min-height:44px; padding:8px 10px; border:1px solid #65cbe9; border-radius:14px;
  background:#eefbff; color:#14284b; font:inherit; font-size:14px; line-height:1.25; text-align:left; cursor:pointer; }
.product-choices button:focus-visible { outline:2px solid #087fc0; outline-offset:2px; }
.item-library-link { order:2; margin:6px 0; }
.item-library-link[hidden] { display:none; }
.item-library-link a { display:inline-block; min-height:44px; padding:10px 12px; box-sizing:border-box;
  border:1px solid #65cbe9; border-radius:12px; background:#eefbff; color:#0879b6; }
/* Home: the two small links are now two half-width buttons in the same style as the three above (2026-11-02). */
.home-links, html.home-locked .home-links { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:6px 0 8px; white-space:nowrap; line-height:1.1; }
.home-links a, html.home-locked .home-links .amazon-stock-link { display:flex; align-items:center; justify-content:center; gap:7px; min-height:42px; padding:6px 10px; margin:0; box-sizing:border-box;
  border:1.5px solid #cfc6ff; border-bottom:2px solid #b7aaff; border-radius:16px; background:linear-gradient(110deg,#f4f1ff,#fff); box-shadow:0 5px 14px #7a63f020;
  color:#13294d; font-size:14.5px; font-weight:800; text-decoration:none; }
.home-links .amazon-stock-link .mini-icon { color:#6d55e8; }
.home-links .products-link { color:#13294d; font-size:14.5px; border-color:#a9e9e6; border-bottom-color:#7fdcd6; background:linear-gradient(110deg,#ecfbfa,#fff); box-shadow:0 5px 14px #2bb8ae20; }
.home-links .products-link .mini-icon { color:#14a39a; }
.home-links .mini-icon { width:19px; height:19px; flex:none; }
.home-links a:active { transform:translateY(1px); }
/* The bottle picture belongs to the home screen only; other screens match the plain logo pages (2026-11-03). */
html:not(.home-locked) .skin-hero, html:not(.home-locked) .gel-entry-hitarea { display:none; }
html:not(.home-locked) .brand-header { height:auto; }
