/* Better Google Calendar project page: interactive quick-add demo */
.bgc-demo { margin: 1.25rem 0 2rem; border: 1px solid var(--border); border-radius: 10px; background: var(--bg-card); box-shadow: var(--shadow); overflow: hidden; }
.bgc-demo-head { display: flex; align-items: center; gap: .6rem; padding: .7rem 1rem; background: var(--bg-soft); border-bottom: 1px solid var(--border); font-size: .9rem; color: var(--text-soft); }
.bgc-demo-head kbd { font: 600 .75rem ui-monospace, Menlo, monospace; border: 1px solid var(--border); border-radius: 4px; padding: 0 .35rem; background: var(--bg-card); }
.bgc-demo-body { padding: 1rem; }
.bgc-demo-input { width: 100%; box-sizing: border-box; font: inherit; font-size: 1.05rem; padding: .7rem .9rem; border: 2px solid var(--accent); border-radius: 8px; background: var(--bg); color: var(--text); outline: none; }
.bgc-demo-input:focus { box-shadow: 0 0 0 3px var(--accent-soft); }
.bgc-demo-examples { display: flex; flex-wrap: wrap; gap: .4rem; margin: .7rem 0 1rem; }
.bgc-demo-examples button { font: inherit; font-size: .82rem; padding: .25rem .6rem; border: 1px solid var(--border); border-radius: 999px; background: var(--bg-card); color: var(--text-soft); cursor: pointer; }
.bgc-demo-examples button:hover { border-color: var(--accent); color: var(--accent); }
.bgc-demo-card { border: 1px solid var(--border); border-radius: 8px; padding: .8rem 1rem; background: var(--bg); }
.bgc-demo-card h4 { margin: 0 0 .3rem; font-size: 1.05rem; }
.bgc-demo-card .meta { color: var(--text-soft); font-size: .92rem; }
.bgc-demo-card .meta span + span::before { content: " · "; color: var(--text-faint); }
.bgc-demo-card.is-empty { color: var(--text-faint); font-style: italic; }
.bgc-demo-fields { display: grid; grid-template-columns: max-content 1fr; gap: .25rem .8rem; margin: .8rem 0 0; font-size: .88rem; }
.bgc-demo-fields dt { color: var(--text-faint); margin: 0; }
.bgc-demo-fields dd { margin: 0; font-family: ui-monospace, Menlo, Consolas, monospace; word-break: break-all; }
.bgc-demo-url { margin-top: .9rem; font-size: .85rem; }
.bgc-demo-url code { display: block; white-space: pre-wrap; word-break: break-all; font-size: .78rem; padding: .5rem .7rem; background: var(--bg-soft); border: 1px solid var(--border); border-radius: 6px; max-height: 7rem; overflow: auto; color: var(--text-soft); }
.bgc-demo-url a { display: inline-block; margin-top: .5rem; }
.bgc-demo-url .accent-key { color: var(--accent); }
.bgc-demo-foot { padding: .6rem 1rem; border-top: 1px solid var(--border); font-size: .82rem; color: var(--text-faint); }
.feature-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: .9rem 1.4rem; padding: 0; margin: 1.2rem 0; list-style: none; }
.feature-list li { padding-left: 1.1rem; position: relative; }
.feature-list li::before { content: ""; position: absolute; left: 0; top: .5em; width: .45rem; height: .45rem; border-radius: 50%; background: var(--accent); }
.feature-list b { display: block; }
