.demo-rail { display:none; }
.draft-bar { background:#eae4d8; color:#514532; padding:8px 16px; display:flex; justify-content:center; gap:18px; flex-wrap:wrap; font-size:12px; }
.draft-bar button { border:0; background:none; text-decoration:underline; color:inherit; cursor:pointer; }
.research-strip { padding:11px 20px; background:var(--aqua-soft); color:var(--aqua-dark); text-align:center; font-size:12px; font-weight:750; }
.draft-research-note { border-left:3px solid var(--gold); padding:12px 16px; background:#f0f3ef; font-size:14px; }
.hero h1 { font-size:clamp(36px,4.4vw,64px); }
.hero .hero-grid { padding-top:42px; padding-bottom:42px; }
.draft-best .product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.draft-best .product-card { display:block; }
.draft-best .product-card-media { min-height:270px; }
.draft-best .section-heading small { display:block; color:var(--muted); margin-top:10px; }
.draft-arrows { display:none; gap:8px; }
.draft-arrows button { border:1px solid var(--line); background:white; border-radius:50%; width:44px; height:44px; cursor:pointer; }
.draft-faq details { padding:20px 0; border-bottom:1px solid var(--line); }
.draft-faq summary { font-size:18px; font-weight:650; cursor:pointer; }
.draft-faq p { max-width:750px; color:var(--muted); }
.draft-support { position:fixed; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); z-index:60; }
.draft-support summary { list-style:none; display:flex; align-items:center; gap:10px; background:var(--ink); color:white; border-radius:28px; padding:14px 20px; cursor:pointer; box-shadow:var(--shadow-sm); }
.draft-support summary::-webkit-details-marker { display:none; }
.draft-support summary > svg { width:20px; height:20px; }
.draft-support-panel { position:absolute; bottom:64px; right:0; width:250px; background:white; border:1px solid var(--line); box-shadow:var(--shadow-lg); padding:18px; border-radius:18px; display:grid; gap:12px; }
.draft-support-panel a,.draft-support-panel button { display:flex; align-items:center; gap:12px; padding:10px; color:var(--ink); background:var(--paper); border:0; border-radius:9px; cursor:pointer; font:inherit; text-decoration:none; }
.draft-support-panel svg { width:22px; height:22px; }
body[data-route="help"] .draft-support { display:none; }
#entry-dialog { width:min(560px,calc(100% - 28px)); max-height:calc(100dvh - 28px); padding:28px 32px; border:1px solid var(--line); border-radius:24px; color:var(--ink); background:var(--paper); box-shadow:var(--shadow-lg); overflow:auto; }
#entry-dialog::backdrop { background:rgba(11,27,26,.72); backdrop-filter:blur(7px); }
#entry-dialog h2 { font-size:32px; line-height:1.15; margin:15px 0; }
#entry-dialog .entry-brand { font-size:13px; letter-spacing:3px; font-weight:850; }
#entry-dialog .entry-symbol { display:grid; place-items:center; width:62px; height:62px; border:1px solid var(--gold); border-radius:50%; color:var(--aqua-dark); font-size:24px; font-weight:800; margin:20px 0 14px; }
.entry-actions { display:grid; gap:9px; margin-top:18px; }
.entry-legal { display:flex; flex-wrap:wrap; gap:20px; margin-top:16px; font-size:13px; }
.entry-legal a { color:var(--muted); }
.entry-detail { padding:15px 0; border-top:1px solid var(--line); }
.entry-detail summary { cursor:pointer; font-weight:700; }
.entry-detail p { font-size:14px; }
.entry-status { color:var(--aqua-dark); font-size:13px; }
.entry-privacy-eyebrow { margin-top:18px; }
.entry-cookie-actions { grid-template-columns:1fr; }
.entry-cookie-actions .btn { font-size:13px; padding:13px 10px; }
.entry-cookie-actions .settings { grid-column:auto; }
body:has(#entry-dialog[open]) { overflow:hidden; }
@media(max-width:860px) { .draft-arrows { display:flex; } .draft-best .product-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:20px; } .draft-best .product-card { flex:0 0 78%; scroll-snap-align:start; } }
@media(max-width:600px) {
  #entry-dialog { width:calc(100% - 20px); max-height:calc(100dvh - 20px); padding:20px; border-radius:18px; }
  #entry-dialog h2 { font-size:25px; margin:12px 0; }
  #entry-dialog .entry-symbol { width:56px; height:56px; margin:15px 0 10px; font-size:22px; }
  #entry-dialog .draft-research-note { padding:10px 12px; }
  #entry-dialog .entry-actions { margin-top:14px; }
  #entry-dialog .entry-legal { margin-top:13px; }
  .entry-privacy-eyebrow { margin-top:12px; }
  .research-strip { font-size:12px; padding:10px 14px; }
  .draft-bar { gap:6px 16px; }
  .draft-support { right:max(12px,env(safe-area-inset-right)); bottom:calc(12px + env(safe-area-inset-bottom)); }
  .draft-support summary { width:48px; height:48px; justify-content:center; padding:0; border-radius:50%; }
  .draft-support summary > span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .draft-support summary > svg { width:22px; height:22px; }
  .draft-support-panel { right:0; bottom:58px; width:min(250px,calc(100vw - 28px)); padding:14px; }
  body[data-route="product"] .draft-support { bottom:calc(84px + env(safe-area-inset-bottom)); }
}
@media(max-height:640px) {
  #entry-dialog { padding-block:18px; }
  #entry-dialog .entry-symbol { width:50px; height:50px; margin:10px 0 8px; font-size:20px; }
  #entry-dialog h2 { margin:10px 0; font-size:24px; }
  #entry-dialog .entry-actions { margin-top:12px; }
  #entry-dialog .entry-legal { margin-top:11px; }
}
@media print { .draft-support,.draft-bar,#entry-dialog { display:none; } }
