:root { color-scheme: light; }
html { scroll-behavior: smooth; }
.badge { display:inline-flex; align-items:center; gap:.5rem; border:1px solid rgb(226 232 240); border-radius:9999px; padding:.25rem .75rem; font-size:.75rem; background:white; }
.kbd, .mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
.ad-slot { border:1px dashed rgb(203 213 225); border-radius:1rem; background:rgb(248 250 252); color:rgb(71 85 105); }
.ad-slot::before { content: "Ad Placeholder"; display:block; font-size:.75rem; padding:.5rem .75rem; border-bottom:1px dashed rgb(203 213 225); }
.ad-slot .inner { padding:.75rem; font-size:.875rem; }
.shadow-soft { box-shadow: 0 10px 25px rgba(15,23,42,0.08); }
.card { border:1px solid rgb(226 232 240); border-radius:1.25rem; background:white; }
.card-h { padding:1.25rem 1.25rem 0 1.25rem; }
.card-b { padding:1.25rem; }
.drop { border:2px dashed rgb(203 213 225); border-radius:1.25rem; background:rgb(248 250 252); padding:1.25rem; }
.drop.drag { border-color: rgb(96 165 250); background: rgb(239 246 255); }
.toast { position:fixed; bottom:1.25rem; left:50%; transform:translateX(-50%); background:white; border:1px solid rgb(226 232 240); border-radius:9999px; padding:.75rem 1rem; box-shadow: 0 10px 25px rgba(15,23,42,0.12); display:none; z-index:60;}
.toast.show { display:block; }
details.faq { border:1px solid rgb(226 232 240); border-radius:1rem; padding: .75rem 1rem; background:white; }
details.faq summary { cursor:pointer; font-weight:700; }
