/* PUBLIC-FREE-SEO-001: isolated public demonstration, no clinical runtime styles. */
.sio-free-demo{scroll-margin-top:110px;color:#172c43}
.sio-demo-intro{max-width:760px;margin-bottom:28px}
.sio-demo-kicker{color:#08718a;font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.sio-demo-intro h2{font-size:clamp(1.65rem,3vw,2.4rem);letter-spacing:-.035em;color:inherit}
.sio-demo-intro p{line-height:1.7}
.sio-demo-shell{border:1px solid #ccdce7;border-radius:20px;overflow:hidden;background:#f3f8fb;color:#172c43;box-shadow:0 16px 40px #17324f0d}
.sio-demo-bar{padding:16px 22px;background:#102c44;color:#fff;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;font-size:.85rem}
.sio-demo-bar strong span{font-weight:400;color:#d4e4ef}
.sio-demo-badge{display:inline-block;padding:5px 10px;border-radius:20px;background:#e0f5ed;color:#155f49;font-size:.72rem;font-weight:700;white-space:nowrap}
.sio-demo-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border-bottom:1px solid #dbe5ed;padding:12px;gap:8px}
.sio-demo-steps a{padding:12px 10px;border-radius:10px;text-decoration:none;color:#476078;font-weight:700;font-size:.85rem;display:flex;align-items:center;gap:8px;min-width:0}
.sio-demo-steps b{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border-radius:50%;background:#eef3f7;font-size:.75rem}
.sio-demo-steps a[aria-current=step]{background:#e1f4fa;color:#07687e}
.sio-demo-steps a[aria-current=step] b{background:#087b96;color:#fff}
.sio-demo-content{padding:28px}
.sio-demo-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;align-items:center;scroll-margin-top:110px}
.sio-demo-panel+.sio-demo-panel{margin-top:32px;padding-top:28px;border-top:1px solid #dbe5ed}
.sio-demo-shell[data-enhanced] .sio-demo-panel{margin:0;padding:0;border:0;min-height:295px}
.sio-free-demo [hidden]{display:none!important}
.sio-demo-number{font-size:.8rem;color:#547186;font-weight:700;letter-spacing:.1em}
.sio-demo-copy h3{font-size:1.45rem;line-height:1.25;margin:14px 0;color:#102c44}
.sio-demo-copy p{font-size:.95rem;line-height:1.7;color:#435f76}
.sio-free-demo a:not(.btn){text-underline-offset:3px}
.sio-demo-copy a:not(.btn),.sio-demo-teaching a,.sio-demo-guides a{color:#076880}
.sio-demo-card{padding:24px;background:#fff;border:1px solid #dbe5ed;border-radius:14px;min-width:0}
.sio-demo-card strong{color:#17324f}
.sio-demo-person{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.sio-demo-avatar{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:#ddf3fa;color:#08647c;font-weight:800}
.sio-demo-person small,.sio-demo-appointment small{display:block;color:#536a7e;font-size:.78rem;line-height:1.5}
.sio-demo-fields{margin:0}
.sio-demo-fields div{display:flex;gap:12px;justify-content:space-between;padding:12px 0;border-top:1px solid #edf2f6;font-size:.82rem}
.sio-demo-fields dt{font-weight:600;color:#536a7e}
.sio-demo-fields dd{margin:0;text-align:right;max-width:66%}
.sio-demo-note{color:#536a7e;font-size:.78rem;line-height:1.65;margin:12px 0 0}
.sio-demo-slots{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.sio-demo-slots button,.sio-demo-teeth button{background:#fff;border:1px solid #b7ccd9;border-radius:8px;color:#27475d;font:inherit;cursor:pointer;min-height:44px}
.sio-demo-slots button{padding:8px 18px}
.sio-demo-slots button[aria-pressed=true],.sio-demo-teeth button[aria-pressed=true]{background:#087b96;color:#fff;border-color:#087b96}
.sio-demo-appointment{border-left:4px solid #087b96;background:#edf7fb;padding:14px 12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.85rem}
.sio-demo-teeth{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:20px 0 12px}
.sio-demo-teeth button{height:48px;border-radius:12px 12px 7px 7px;font-weight:700;font-size:.8rem;box-shadow:inset 0 -3px #e0ebf1}
.sio-demo-teeth button:disabled{opacity:1;cursor:default}
.sio-demo-budget{list-style:none;padding:0;margin:18px 0;font-size:.86rem}
.sio-demo-budget li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e7eef3}
.sio-demo-total{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #cbdce6}
.sio-demo-reset{background:none;border:0;color:#076880;text-decoration:underline;text-underline-offset:3px;padding:12px 0 0;font-size:.8rem}
.sio-demo-footnote{font-size:.78rem;line-height:1.6;margin:0;padding:0 28px 22px;color:#496277}
.sio-demo-guides{display:flex;flex-wrap:wrap;gap:12px 24px;margin:22px 0;font-size:.85rem;font-weight:600}
.sio-demo-teaching{padding:18px 20px;border:1px solid #dbe5ed;border-radius:12px;background:#fff;font-size:.9rem;line-height:1.75;color:#354f65;scroll-margin-top:110px}
.sio-demo-teaching summary{font-weight:700;cursor:pointer;color:#17324f}
.sio-demo-teaching p{margin:14px 0 0}.sio-demo-teaching ol{margin:14px 0 0;padding-left:22px}
.sio-free-demo :is(a,button,summary):focus-visible{outline:3px solid #a75600;outline-offset:3px}
@media(max-width:767px){.sio-demo-panel{grid-template-columns:1fr;gap:20px}.sio-demo-shell[data-enhanced] .sio-demo-panel{min-height:0}.sio-demo-content{padding:20px}.sio-demo-card{padding:18px}.sio-demo-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px}.sio-demo-steps a{font-size:.78rem;padding:9px}.sio-demo-footnote{padding:0 20px 20px}.sio-demo-teeth{gap:5px}.sio-demo-teeth button{font-size:.73rem;min-height:44px}.sio-demo-bar{padding:14px 18px}.sio-demo-fields div{flex-direction:column;gap:4px}.sio-demo-fields dd{text-align:left;max-width:100%}.sio-demo-budget li{flex-wrap:wrap}.sio-demo-copy .btn{white-space:normal}}
@media(max-width:480px){.sio-demo-teeth{grid-template-columns:repeat(4,minmax(0,1fr))}}
[data-bs-theme=dark] .sio-free-demo{color:#e0ebf4}
[data-bs-theme=dark] .sio-demo-teaching{background:#172f43;color:#d1e1ed;border-color:#4b6172}
[data-bs-theme=dark] .sio-demo-teaching summary{color:#e3eef6}
[data-bs-theme=dark] .sio-demo-teaching a,[data-bs-theme=dark] .sio-demo-guides a,[data-bs-theme=dark] .sio-demo-kicker{color:#77d8ee}
@media print{.sio-demo-panel[hidden]{display:grid!important}.sio-demo-panel+.sio-demo-panel{margin-top:25px!important}.sio-demo-steps,.sio-demo-copy .btn,.sio-demo-reset{display:none}.sio-demo-shell{box-shadow:none}}
