/* SnapApp CMS additions (the original stylesheets above are untouched).
   The "Live demo" switcher of the original is scaffolding: pages now open through real URLs.
   The element stays in the page because the original scripts use its buttons for navigation. */
.demobar{display:none!important}
.snap-banner{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:99999;max-width:min(92vw,560px);background:#fff4e5;color:#7a2e0e;border:1px solid #f5c77e;border-radius:10px;padding:10px 16px;font:600 14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.18)}

/* keyword links written as [keyword](/url) in the admin boxes */
a.cl{color:var(--lnk,#2b7bd4);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
a.cl:hover{text-decoration-thickness:2px}
.fcard a.cl{color:inherit}

/* ---- content typography for the classic-editor output ---- */
.pb ul,.pb ol,#aboutBody ul,#aboutBody ol,.fa ul,.fa ol,#dlCsBody ul,#dlCsBody ol,.dl-desc ul,.dl-desc ol{margin:0 0 1em;padding-inline-start:1.5em;text-align:start}
.pb ul,#aboutBody ul,.fa ul,#dlCsBody ul{list-style:disc}
.pb ol,#aboutBody ol,.fa ol,#dlCsBody ol{list-style:decimal}
.pb li,#aboutBody li,.fa li,#dlCsBody li{margin:0 0 .35em}
.pb blockquote,#aboutBody blockquote,.fa blockquote,#dlCsBody blockquote{margin:0 0 1em;padding:.5em 1.1em;border-inline-start:4px solid var(--lnk,#2b7bd4);background:rgba(127,127,127,.09);border-radius:0 8px 8px 0}
.pb blockquote p,#aboutBody blockquote p,.fa blockquote p{margin:0}
.pb h4,#aboutBody h4,.fa h4,#dlCsBody h4{font-size:20px;margin:18px 0 .4em;color:var(--hd,var(--ink))}
#aboutBody h2{font-size:1.5rem;margin:1.2em 0 .5em}
#aboutBody h3{font-size:1.25rem;margin:1.1em 0 .45em}
#aboutBody p:last-child,.fa p:last-child{margin-bottom:0}
.fa p{margin:0 0 .8em}
.pb strong,#aboutBody strong,.fa strong{font-weight:700}

/* ---- the classic editor (admin) ---- */
.rte{border:1px solid var(--line,#d6dbe6);border-radius:10px;background:var(--white,#fff);margin:0 0 14px;position:relative}
.rte-bar{display:flex;flex-wrap:wrap;align-items:center;gap:3px;padding:6px 8px;border-bottom:1px solid var(--line,#d6dbe6);background:rgba(127,127,127,.07);border-radius:10px 10px 0 0}
.rte-b{all:unset;box-sizing:border-box;min-width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;color:var(--ink,#17203a);font-size:14px}
.rte-b:hover{background:rgba(43,123,212,.14)}
.rte-b svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rte-b:focus-visible,.rte-tab:focus-visible{outline:2px solid #2b7bd4}
.rte-sep{width:1px;height:20px;background:var(--line,#d6dbe6);margin:0 4px}
.rte .rte-fmt{font:inherit;font-size:.85rem;padding:4px 6px;height:30px;border-radius:6px;border:1px solid var(--line,#d6dbe6);background:transparent;color:var(--ink,#17203a);width:auto}
.rte-tabs{margin-inline-start:auto;display:inline-flex;border:1px solid var(--line,#d6dbe6);border-radius:7px;overflow:hidden}
.rte-tab{all:unset;box-sizing:border-box;padding:5px 12px;font-size:.78rem;font-weight:700;cursor:pointer;color:var(--muted,#5b6785)}
.rte-tab.on{background:#2b7bd4;color:#fff}
.rte-bar.html .rte-b,.rte-bar.html .rte-fmt{opacity:.35;pointer-events:none}
.rte-area{padding:12px 14px;outline:none;line-height:1.65;font-size:1rem;color:var(--ink,#17203a);overflow-wrap:anywhere;max-height:70vh;overflow:auto}
.rte-area:empty:before{content:"Start writing here...";color:var(--muted,#8a94ad)}
.rte-area p{margin:0 0 .9em}
.rte-area h2{font-size:1.55rem;margin:.8em 0 .4em;line-height:1.25}
.rte-area h3{font-size:1.3rem;margin:.8em 0 .4em;line-height:1.25}
.rte-area h4{font-size:1.1rem;margin:.8em 0 .4em}
.rte-area ul,.rte-area ol{margin:0 0 .9em;padding-inline-start:1.5em}
.rte-area ul{list-style:disc}.rte-area ol{list-style:decimal}
.rte-area blockquote{margin:0 0 .9em;padding:.4em 1em;border-inline-start:4px solid #2b7bd4;background:rgba(127,127,127,.09)}
.rte-area a{color:#2b7bd4;text-decoration:underline}
.rte-inline .rte-area{max-height:40vh}
.rte-src{display:block;width:100%;box-sizing:border-box;border:0;border-radius:0 0 10px 10px;padding:12px 14px;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:transparent;color:var(--ink,#17203a);resize:vertical}
.rte-src[hidden],.rte-area[hidden],.rte-pop[hidden]{display:none}
.rte-pop{position:absolute;z-index:20;inset-inline-start:12px;top:46px;width:min(420px,calc(100% - 24px));background:var(--white,#fff);border:1px solid var(--line,#d6dbe6);border-radius:10px;box-shadow:0 12px 32px rgba(23,32,58,.22);padding:12px}
.rte-pop label{display:grid;gap:4px;margin:0 0 8px;font-size:.78rem;text-transform:none;letter-spacing:0}
.rte-pop input[type=text],.rte-pop select{font:inherit;padding:7px 9px;border:1px solid var(--line,#d6dbe6);border-radius:8px;background:transparent;color:var(--ink,#17203a);width:100%;box-sizing:border-box}
.rte-opts{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 8px}
.rte-opts label{display:flex;align-items:center;gap:6px;margin:0;font-weight:600}
.rte-pa{display:flex;gap:8px}

/* inside the admin panel the website header / footer are hidden */
html.snap-admin-on .top, html.snap-admin-on .foot, html.snap-admin-on .btt, html.snap-admin-on #btt { display: none !important; }
/* admin panel = the whole screen: no site header, footer, page margins or card frame */
html.snap-admin-on body { margin: 0; background: var(--bg, #f3f6fb); }
html.snap-admin-on #v-admin > .wrap { max-width: none; width: 100%; padding: 0; margin: 0; }
html.snap-admin-on .adm { margin: 0; border: 0; border-radius: 0; box-shadow: none; min-height: 100vh; }
html.snap-admin-on .adm aside { border-radius: 0; position: sticky; top: 0; align-self: start; height: 100vh; overflow-y: auto; }

/* footer logo: image / icon / text, all optional */
.fbrand .f-img{width:auto;max-width:220px;object-fit:contain;flex:none;display:block}

/* "Code & Ads": ad positions */
.snap-ad{display:block;max-width:100%;margin:20px auto;text-align:center;overflow:hidden;clear:both}
.snap-ad:empty{margin:0;min-height:0}