:root{--demo-navy:#172a57;--demo-blue:#2563eb;--demo-blue2:#1d4ed8;--demo-ink:#0f172a;--demo-muted:#64748b;--demo-line:#dbe5f1;--demo-bg:#f5f8fc;--demo-success:#0f9f6e;--demo-danger:#c24141}
*{box-sizing:border-box}.demo-public-body{margin:0;min-height:100vh;background:radial-gradient(circle at 80% 0,#e9f1ff 0,transparent 32%),linear-gradient(180deg,#fff 0,#f6f9fd 70%,#eef4fb 100%);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;color:var(--demo-ink)}
.demo-public-top{height:72px;padding:0 clamp(18px,4vw,58px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(203,213,225,.7);background:rgba(255,255,255,.92);backdrop-filter:blur(12px)}
.demo-public-brand{display:flex;align-items:center;gap:11px;color:var(--demo-ink);text-decoration:none}.demo-public-brand img{width:42px;height:42px;border-radius:12px}.demo-public-brand span{display:flex;flex-direction:column;line-height:1.1}.demo-public-brand strong{font-size:.96rem}.demo-public-brand small{color:var(--demo-muted);font-size:.68rem;margin-top:4px;font-weight:650}.demo-public-top-actions{display:flex;align-items:center;gap:18px}.demo-text-link{color:#334155;text-decoration:none;font-size:.78rem;font-weight:800}.demo-text-link:hover{color:var(--demo-blue)}
.demo-public-main{width:min(1220px,calc(100% - 36px));margin:0 auto;padding:clamp(30px,5vw,68px) 0 60px}.demo-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:clamp(32px,6vw,80px);min-height:calc(100vh - 170px)}.demo-hero-copy{max-width:650px}.demo-eyebrow,.demo-ready-kicker{display:inline-flex;align-items:center;gap:7px;font-size:.67rem;letter-spacing:.1em;font-weight:950;color:var(--demo-blue);text-transform:uppercase}.demo-hero h1,.demo-profile-main h1{font-size:clamp(2.15rem,4.9vw,4.4rem);line-height:.98;letter-spacing:-.045em;margin:14px 0 18px;color:#0b1937}.demo-profile-main h1{font-size:clamp(2rem,3.5vw,3.25rem)}.demo-lead,.demo-profile-main>p{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.65;color:#516176;margin:0;max-width:680px}.demo-trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:27px 0 26px}.demo-trust-grid span{font-size:.83rem;font-weight:800;color:#334155}.demo-trust-grid span::first-letter{color:var(--demo-success)}
.demo-start-form{display:flex;align-items:flex-start;flex-direction:column;gap:9px}.demo-start-form small{color:#64748b;font-size:.72rem;font-weight:650}.demo-primary,.demo-secondary,.demo-start-button{border:0;border-radius:13px;min-height:46px;padding:0 18px;font:850 .86rem/1 Inter,Segoe UI,system-ui,sans-serif;cursor:pointer;transition:.16s ease}.demo-primary,.demo-start-button{background:linear-gradient(135deg,#2458d7,#1d4ed8);color:white;box-shadow:0 10px 22px rgba(37,99,235,.2)}.demo-primary:hover,.demo-start-button:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(37,99,235,.25)}.demo-start-button{min-height:54px;padding:0 26px;font-size:1rem;display:inline-flex;align-items:center;gap:10px}.demo-secondary{background:#fff;border:1px solid var(--demo-line);color:#334155}.demo-secondary:hover{border-color:#b7c7da;background:#f8fafc}
.demo-preview{border:1px solid #d5e1ef;background:rgba(255,255,255,.94);border-radius:28px;padding:20px;box-shadow:0 28px 70px rgba(26,54,93,.12);position:relative;overflow:hidden}.demo-preview::before{content:"";position:absolute;right:-100px;top:-120px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,#dce8ff 0,rgba(220,232,255,0) 67%);pointer-events:none}.demo-preview-head{display:flex;align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid #e6edf6;position:relative}.demo-preview-head>div{display:flex;flex-direction:column;flex:1}.demo-preview-head strong{font-size:.9rem}.demo-preview-head small{font-size:.67rem;color:#64748b;margin-top:2px}.demo-preview-head>b{font-size:.58rem;letter-spacing:.08em;color:#087f5b;background:#e9fbf4;padding:6px 8px;border-radius:999px}.demo-live-dot{width:10px;height:10px;background:#10b981;border-radius:50%;box-shadow:0 0 0 5px #dff8ee}.demo-preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.demo-preview-metrics>div{padding:14px 12px;border-radius:15px;background:#f7f9fc;border:1px solid #e7edf5}.demo-preview-metrics strong{display:block;font-size:1.42rem}.demo-preview-metrics small{font-size:.62rem;color:#64748b;font-weight:750}.demo-flow{display:flex;align-items:center;gap:5px;overflow:auto;padding:7px 0 14px;scrollbar-width:none}.demo-flow::-webkit-scrollbar{display:none}.demo-flow span{white-space:nowrap;padding:6px 8px;border-radius:999px;background:#edf3ff;color:#234d9b;font-size:.59rem;font-weight:850}.demo-flow b{font-size:.65rem;color:#94a3b8}.demo-preview-patient{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 4px;border-top:1px solid #edf1f6}.demo-avatar{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#e8efff,#dce7ff);color:#2750a1;display:grid;place-items:center;font-size:.62rem;font-weight:950}.demo-preview-patient>div{min-width:0}.demo-preview-patient strong,.demo-preview-patient small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.demo-preview-patient strong{font-size:.75rem}.demo-preview-patient small{font-size:.61rem;color:#64748b;margin-top:3px}.demo-preview-patient em{font-style:normal;color:#7c3aed;background:#f3e8ff;border-radius:999px;padding:5px 7px;font-size:.52rem;font-weight:900}.demo-preview-docs{display:flex;gap:6px;align-items:center;flex-wrap:wrap;background:#f8fafc;border-radius:14px;padding:10px 11px;margin-top:10px}.demo-preview-docs strong{font-size:.63rem;margin-right:4px}.demo-preview-docs span{font-size:.55rem;font-weight:850;padding:4px 6px;background:white;border:1px solid #e2e8f0;border-radius:7px;color:#475569}
.demo-profile-shell{max-width:1180px;margin:0 auto}.demo-session-strip{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 16px;background:linear-gradient(120deg,#eef2ff,#f6f8ff);border:1px solid #dbe2fb;border-radius:17px;margin-bottom:22px}.demo-session-strip>span,.demo-session-strip>div{display:flex;flex-direction:column}.demo-session-strip b{font-size:.72rem;color:#263f79}.demo-session-strip small{color:#64748b;font-size:.62rem;margin-top:2px}.demo-session-strip>div{text-align:right}.demo-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:28px;align-items:start}.demo-profile-main{background:white;border:1px solid #e0e8f2;border-radius:24px;padding:clamp(22px,3vw,38px);box-shadow:0 18px 55px rgba(30,58,92,.07)}.demo-profile-main>p{font-size:.9rem;max-width:720px}.demo-profile-options{display:grid;gap:9px;margin-top:24px}.demo-profile-card{margin:0}.demo-profile-card button,.demo-full-card button{width:100%;text-align:left;border:1px solid #dde6f0;background:#fff;border-radius:15px;padding:11px 13px;display:grid;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:11px;cursor:pointer;color:#172033;font-family:inherit;transition:.14s ease}.demo-profile-card button:hover{border-color:#a9c1ee;background:#f9fbff;transform:translateY(-1px)}.demo-profile-card.is-current button{border-color:#9cb7f1;background:#f3f7ff}.demo-profile-icon{width:40px;height:40px;border-radius:12px;background:#edf3ff;color:#2856ab;display:grid;place-items:center;font-size:1.12rem;font-weight:900}.demo-profile-card strong,.demo-full-card strong{display:block;font-size:.83rem}.demo-profile-card small,.demo-full-card small{display:block;color:#64748b;font-size:.64rem;margin-top:3px;line-height:1.35}.demo-profile-card button>b,.demo-full-card button>b{color:#94a3b8}.demo-full-card{margin-top:13px}.demo-full-card button{border-color:#bfd1f8;background:linear-gradient(135deg,#f2f6ff,#eaf1ff);grid-template-columns:42px minmax(0,1fr) 24px}.demo-full-card button>span:first-child{width:40px;height:40px;border-radius:12px;background:#2563eb;color:white;display:grid;place-items:center;font-size:.8rem}.demo-feedback-invite{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid #e9eef5}.demo-feedback-invite>div{display:flex;align-items:center;gap:10px;min-width:0}.demo-feedback-invite>div>span{font-size:1.5rem}.demo-feedback-invite strong,.demo-feedback-invite small{display:block}.demo-feedback-invite strong{font-size:.78rem}.demo-feedback-invite small{color:#64748b;font-size:.62rem;margin-top:3px;line-height:1.3}.demo-feedback-invite .demo-secondary{min-height:40px;padding:0 13px;font-size:.72rem;white-space:nowrap}
.demo-ready-card{background:#13264f;color:white;border-radius:24px;padding:24px;box-shadow:0 20px 50px rgba(15,32,68,.14);position:sticky;top:24px}.demo-ready-kicker{color:#9fc3ff}.demo-ready-card h2{font-size:1.45rem;line-height:1.08;margin:10px 0 8px}.demo-ready-card>p{font-size:.72rem;line-height:1.5;color:#bfcee8;margin:0 0 16px}.demo-ready-stat{display:flex;align-items:baseline;gap:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:14px;padding:12px 14px}.demo-ready-stat strong{font-size:1.7rem}.demo-ready-stat span{font-size:.68rem;color:#cbd8ee;font-weight:750}.demo-ready-card ul{list-style:none;margin:15px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.demo-ready-card li{font-size:.61rem;color:#d9e5f7;font-weight:750;display:flex;align-items:center;gap:6px}.demo-ready-card li i{width:6px;height:6px;border-radius:50%;background:#5ee0ad;box-shadow:0 0 0 3px rgba(94,224,173,.12)}.demo-ready-docs{border-top:1px solid rgba(255,255,255,.12);padding-top:14px}.demo-ready-docs strong,.demo-ready-docs small{display:block}.demo-ready-docs strong{font-size:.72rem}.demo-ready-docs small{color:#b9c8e0;font-size:.6rem;margin-top:4px;line-height:1.45}.demo-ready-actions{display:flex;gap:7px;margin-top:16px}.demo-ready-actions form{flex:1}.demo-ready-actions button{width:100%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:9px 8px;font:800 .61rem/1.1 Inter,Segoe UI,sans-serif;cursor:pointer}.demo-ready-actions button:hover{background:rgba(255,255,255,.14)}
.demo-alert{border-radius:12px;padding:11px 13px;margin:14px 0;font-size:.76rem;font-weight:700;line-height:1.45}.demo-alert-error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}.demo-alert-success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}
.demo-modal{position:fixed;inset:0;z-index:90000;display:none;place-items:center;padding:18px}.demo-modal.is-open{display:grid}.demo-modal-backdrop{position:absolute;inset:0;background:rgba(11,24,48,.67);backdrop-filter:blur(4px)}.demo-modal-dialog{position:relative;width:min(580px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(5,15,35,.36)}.demo-modal-dialog>header{display:flex;justify-content:space-between;gap:15px}.demo-modal-dialog>header h2{margin:7px 0 5px;font-size:1.45rem}.demo-modal-dialog>header p{margin:0;color:#64748b;font-size:.75rem;line-height:1.5}.demo-modal-dialog>header>button{width:38px;height:38px;border-radius:10px;border:1px solid #dde5ef;background:#fff;font-size:1.35rem;cursor:pointer;color:#475569}.demo-feedback-form{display:grid;gap:13px;margin-top:20px}.demo-feedback-form label{display:grid;gap:6px;font-size:.7rem;font-weight:850;color:#334155}.demo-feedback-form input,.demo-feedback-form textarea{width:100%;border:1px solid #cfd9e5;border-radius:11px;padding:11px 12px;font:500 16px/1.35 Inter,Segoe UI,sans-serif;color:#0f172a;outline:0;background:#fff}.demo-feedback-form input:focus,.demo-feedback-form textarea:focus{border-color:#7da2ef;box-shadow:0 0 0 3px rgba(37,99,235,.1)}.demo-feedback-form textarea{resize:vertical;min-height:128px}.demo-feedback-form label>small{font-size:.58rem;color:#64748b;font-weight:650}.demo-char-count{text-align:right}.demo-consent{grid-template-columns:18px minmax(0,1fr)!important;align-items:flex-start!important;gap:8px!important;font-weight:650!important;line-height:1.35!important}.demo-consent input{width:17px!important;height:17px!important;margin:1px 0 0;padding:0!important}.demo-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.demo-feedback-success{text-align:center;padding:16px 8px 8px}.demo-feedback-success>span{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 13px;background:#e8fff5;color:#059669;font-size:1.7rem;font-weight:950}.demo-feedback-success h2{margin:0 0 8px}.demo-feedback-success p{color:#64748b;font-size:.78rem;line-height:1.55;margin:0 auto 18px;max-width:430px}
.demo-loading{position:fixed;inset:0;z-index:100000;background:rgba(12,28,58,.86);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px;color:#fff}.demo-loading[hidden]{display:none}.demo-loading section{width:min(480px,100%);text-align:center}.demo-loading h2{font-size:1.35rem;margin:15px 0 8px}.demo-loading p{color:#cbd8ee;line-height:1.5;font-size:.78rem}.demo-loading section>div{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:18px}.demo-loading section>div b{font-size:.6rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 9px}.demo-loader{display:block;width:42px;height:42px;border:4px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;margin:auto;animation:demoSpin .9s linear infinite}@keyframes demoSpin{to{transform:rotate(360deg)}}

/* Barra compacta injetada no dashboard/operação durante o Demo. */
.sismed-demo-bar{position:relative;z-index:60000;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 14px;background:linear-gradient(105deg,#eef2ff,#f8f9ff);border-bottom:1px solid #cfd9f6;color:#1e3263;font-family:Inter,Segoe UI,system-ui,sans-serif}.sismed-demo-bar__status{display:flex;align-items:center;gap:9px;min-width:0}.sismed-demo-bar__icon{width:28px;height:28px;border-radius:9px;background:#dfe7ff;display:grid;place-items:center}.sismed-demo-bar__copy{min-width:0;display:flex;flex-direction:column}.sismed-demo-bar__copy strong{font-size:.68rem;letter-spacing:.035em;white-space:nowrap}.sismed-demo-bar__copy small{font-size:.54rem;color:#62708b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sismed-demo-bar__actions{display:flex;align-items:center;gap:6px}.sismed-demo-bar__actions a,.sismed-demo-bar__actions button{height:30px;border-radius:8px;border:1px solid #cfd9eb;background:#fff;color:#2c426c;text-decoration:none;padding:0 9px;display:inline-flex;align-items:center;font:800 .58rem/1 Inter,Segoe UI,sans-serif;cursor:pointer;white-space:nowrap}.sismed-demo-bar__actions a:hover,.sismed-demo-bar__actions button:hover{background:#f5f8ff;border-color:#aec1e7}.sismed-demo-bar__profile{color:#1d4ed8!important}.sismed-demo-inline-modal{position:fixed;inset:0;z-index:95000;display:none;place-items:center;padding:16px}.sismed-demo-inline-modal.is-open{display:grid}.sismed-demo-inline-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.65);backdrop-filter:blur(3px)}.sismed-demo-inline-modal__dialog{position:relative;width:min(540px,100%);background:#fff;border-radius:18px;padding:21px;max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 25px 75px rgba(15,23,42,.35);font-family:Inter,Segoe UI,system-ui,sans-serif}.sismed-demo-inline-modal__dialog header{display:flex;justify-content:space-between;gap:12px}.sismed-demo-inline-modal__dialog h3{margin:0;color:#172033;font-size:1.15rem}.sismed-demo-inline-modal__dialog p{color:#64748b;font-size:.7rem;line-height:1.5}.sismed-demo-inline-modal__dialog header button{width:34px;height:34px;border-radius:9px;border:1px solid #dbe3ed;background:white;font-size:1.2rem;cursor:pointer}.sismed-demo-inline-modal form{display:grid;gap:10px}.sismed-demo-inline-modal label{display:grid;gap:5px;font-size:.67rem;font-weight:800;color:#334155}.sismed-demo-inline-modal input,.sismed-demo-inline-modal textarea{width:100%;border:1px solid #cfd9e5;border-radius:10px;padding:10px 11px;font:500 16px/1.35 Inter,Segoe UI,sans-serif}.sismed-demo-inline-modal textarea{min-height:115px;resize:vertical}.sismed-demo-inline-modal .demo-consent{display:grid}.sismed-demo-inline-modal__actions{display:flex;gap:7px;justify-content:flex-end}.sismed-demo-inline-modal__actions button{min-height:40px;padding:0 13px;border-radius:9px;border:1px solid #d5deea;background:#fff;font-weight:800;cursor:pointer}.sismed-demo-inline-modal__actions button[type=submit]{background:#2563eb;border-color:#2563eb;color:#fff}.sismed-demo-inline-status{font-size:.66rem;border-radius:9px;padding:8px 10px;display:none}.sismed-demo-inline-status.show{display:block}.sismed-demo-inline-status.ok{background:#ecfdf5;color:#047857}.sismed-demo-inline-status.error{background:#fff1f2;color:#9f1239}

@media(max-width:900px){.demo-hero{grid-template-columns:1fr;min-height:auto}.demo-hero-copy{max-width:none}.demo-preview{max-width:650px}.demo-profile-grid{grid-template-columns:1fr}.demo-ready-card{position:relative;top:auto}.demo-ready-card ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.demo-public-top{height:62px;padding:0 13px}.demo-public-brand img{width:36px;height:36px}.demo-public-brand small{display:none}.demo-public-top-actions{gap:10px}.demo-public-top-actions .demo-text-link:first-child{display:none}.demo-text-link{font-size:.69rem}.demo-public-main{width:calc(100% - 24px);padding:25px 0 38px}.demo-hero{gap:28px}.demo-hero h1{font-size:2.45rem}.demo-trust-grid{grid-template-columns:1fr;gap:7px;margin:20px 0}.demo-preview{padding:14px;border-radius:20px}.demo-preview-metrics>div{padding:10px 8px}.demo-preview-metrics strong{font-size:1.2rem}.demo-profile-main{padding:20px 15px;border-radius:19px}.demo-profile-main h1{font-size:2.05rem}.demo-profile-card button,.demo-full-card button{grid-template-columns:38px minmax(0,1fr) 18px;padding:10px}.demo-profile-icon,.demo-full-card button>span:first-child{width:36px;height:36px;border-radius:10px}.demo-profile-card small,.demo-full-card small{font-size:.61rem}.demo-feedback-invite{align-items:flex-start;flex-direction:column}.demo-feedback-invite .demo-secondary{width:100%}.demo-session-strip{align-items:flex-start;flex-direction:column}.demo-session-strip>div{text-align:left}.demo-ready-card{border-radius:19px;padding:19px}.demo-ready-card ul{grid-template-columns:1fr}.demo-modal{padding:0;align-items:end}.demo-modal-dialog{width:100%;border-radius:20px 20px 0 0;max-height:92vh;padding:19px 15px}.demo-modal-actions{display:grid;grid-template-columns:1fr 1fr}.demo-modal-actions button{width:100%}.sismed-demo-bar{padding:6px 8px;min-height:42px}.sismed-demo-bar__copy small{max-width:145px}.sismed-demo-bar__actions a,.sismed-demo-bar__actions button{width:32px;padding:0;justify-content:center;font-size:0}.sismed-demo-bar__actions a::before,.sismed-demo-bar__actions button::before{font-size:.85rem}.sismed-demo-bar__actions .sismed-demo-bar__profile::before{content:"↔"}.sismed-demo-bar__actions [data-demo-feedback]::before{content:"💬"}.sismed-demo-bar__actions [data-demo-reset]::before{content:"↻"}.sismed-demo-inline-modal{padding:0;align-items:end}.sismed-demo-inline-modal__dialog{border-radius:18px 18px 0 0;width:100%;max-height:92vh}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.demo-loader{animation:none}.demo-primary,.demo-start-button,.demo-profile-card button{transition:none}}

/* V115 — refinamento visual da vitrine para a identidade azul/branco da marca. */
:root{--demo-navy:#1f3270;--demo-blue:#2563eb;--demo-blue2:#5b4cf0;--demo-bg:#f6f9ff}
.demo-public-body{background:radial-gradient(circle at 78% -6%,rgba(99,102,241,.14) 0,transparent 30%),radial-gradient(circle at 8% 20%,rgba(96,165,250,.16) 0,transparent 28%),linear-gradient(180deg,#fff 0,#f8fbff 58%,#eef5ff 100%)}
.demo-primary,.demo-start-button{background:linear-gradient(135deg,#2563eb 0%,#4f46e5 58%,#654cf1 100%)}
.demo-preview{border-color:#d4e2f7;box-shadow:0 28px 70px rgba(37,74,145,.11)}
.demo-preview::before{background:radial-gradient(circle,rgba(165,180,252,.42) 0,rgba(220,232,255,0) 68%)}
.demo-profile-main{border-color:#dce7f7;box-shadow:0 18px 55px rgba(37,74,145,.07)}
.demo-ready-card{background:linear-gradient(150deg,#1d3f91 0%,#295ed1 58%,#5b4cf0 100%);box-shadow:0 20px 50px rgba(37,74,145,.18)}
.demo-loading{background:linear-gradient(145deg,rgba(20,48,112,.94),rgba(73,70,184,.92))}

/* V118 — seleção de perfis em uma única viewport e barra Demo mais evidente.
   Escopo intencional: não altera layouts, cards ou tipografia dos módulos internos. */
@media (min-width:901px) and (min-height:700px){
  .demo-profile-active{overflow:hidden}
  .demo-profile-active .demo-public-main{width:min(1440px,calc(100% - 32px));height:calc(100vh - 68px);padding:14px 0 16px;display:flex;align-items:center;overflow:hidden}
  .demo-profile-active .demo-profile-shell{width:100%;max-width:1380px;margin:auto}
  .demo-profile-active .demo-session-strip{margin-bottom:12px;padding:10px 15px;border-radius:14px}
  .demo-profile-active .demo-session-strip b{font-size:.82rem}
  .demo-profile-active .demo-session-strip small{font-size:.68rem}
  .demo-profile-active .demo-profile-grid{grid-template-columns:minmax(0,1fr) 390px;gap:18px;align-items:stretch}
  .demo-profile-active .demo-profile-main{padding:22px 26px;border-radius:20px}
  .demo-profile-active .demo-profile-main h1{font-size:clamp(2.35rem,3vw,3rem);line-height:1;margin:10px 0 10px}
  .demo-profile-active .demo-profile-main>p{font-size:1rem;line-height:1.45;max-width:860px}
  .demo-profile-active .demo-eyebrow{font-size:.74rem}
  .demo-profile-active .demo-profile-options{gap:7px;margin-top:15px}
  .demo-profile-active .demo-profile-card button,.demo-profile-active .demo-full-card button{min-height:55px;padding:8px 12px;grid-template-columns:42px minmax(0,1fr) 22px;gap:12px;border-radius:13px}
  .demo-profile-active .demo-profile-icon,.demo-profile-active .demo-full-card button>span:first-child{width:40px;height:40px;border-radius:11px;font-size:1.15rem}
  .demo-profile-active .demo-profile-card strong,.demo-profile-active .demo-full-card strong{font-size:.94rem}
  .demo-profile-active .demo-profile-card small,.demo-profile-active .demo-full-card small{font-size:.72rem;line-height:1.25;margin-top:2px}
  .demo-profile-active .demo-full-card{margin-top:8px}
  .demo-profile-active .demo-feedback-invite{margin-top:12px;padding-top:11px}
  .demo-profile-active .demo-feedback-invite>div>span{font-size:1.25rem}
  .demo-profile-active .demo-feedback-invite strong{font-size:.86rem}
  .demo-profile-active .demo-feedback-invite small{font-size:.68rem}
  .demo-profile-active .demo-feedback-invite .demo-secondary{min-height:36px;font-size:.7rem}
  .demo-profile-active .demo-ready-card{position:relative;top:auto;height:100%;padding:20px 22px;border-radius:20px;display:flex;flex-direction:column;justify-content:center}
  .demo-profile-active .demo-ready-kicker{font-size:.7rem}
  .demo-profile-active .demo-ready-card h2{font-size:1.7rem;margin:8px 0 7px}
  .demo-profile-active .demo-ready-card>p{font-size:.78rem;line-height:1.4;margin-bottom:12px}
  .demo-profile-active .demo-ready-stat{padding:10px 13px}
  .demo-profile-active .demo-ready-stat strong{font-size:1.8rem}
  .demo-profile-active .demo-ready-stat span{font-size:.72rem}
  .demo-profile-active .demo-ready-card ul{margin:12px 0;gap:7px 12px}
  .demo-profile-active .demo-ready-card li{font-size:.68rem}
  .demo-profile-active .demo-ready-docs{padding-top:11px}
  .demo-profile-active .demo-ready-docs strong{font-size:.78rem}
  .demo-profile-active .demo-ready-docs small{font-size:.65rem}
  .demo-profile-active .demo-ready-actions{margin-top:12px}
  .demo-profile-active .demo-ready-actions button{font-size:.64rem;padding:8px 7px}
}

/* Barra exclusiva do modo Demo dentro do sistema. O restante da interface interna
   permanece intocado. */
.sismed-demo-bar{min-height:50px;padding:7px 14px;background:linear-gradient(100deg,#dbeafe 0%,#eef2ff 48%,#f5f3ff 100%);border-bottom:1px solid #b8c8ee;box-shadow:0 3px 12px rgba(37,74,145,.08);color:#172b61}
.sismed-demo-bar__status{gap:10px}
.sismed-demo-bar__icon{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#2563eb,#654cf1);color:#fff;box-shadow:0 5px 13px rgba(79,70,229,.22);font-size:1rem}
.sismed-demo-bar__copy strong{font-size:.75rem;letter-spacing:.045em;color:#18377e}
.sismed-demo-bar__copy small{font-size:.59rem;color:#50617f;margin-top:1px}
.sismed-demo-bar__guide{margin-left:auto;font:700 .58rem/1.25 Inter,Segoe UI,sans-serif;color:#63718d;white-space:nowrap}
.sismed-demo-bar__actions{gap:7px}
.sismed-demo-bar__actions a,.sismed-demo-bar__actions button{height:34px;border-radius:9px;border-color:#bdcae6;padding:0 10px;font-size:.63rem;gap:5px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.sismed-demo-bar__actions a:hover,.sismed-demo-bar__actions button:hover{background:#fff;border-color:#819bd1;box-shadow:0 4px 10px rgba(37,74,145,.09)}
.sismed-demo-bar__profile{padding:0 11px!important;background:linear-gradient(135deg,#2563eb,#5146dc)!important;border-color:transparent!important;color:#fff!important}
.sismed-demo-bar__profile span{font-weight:650;opacity:.86}
.sismed-demo-bar__profile b{font-weight:900;color:#fff}
.sismed-demo-bar__profile i{font-style:normal;font-size:.7rem;opacity:.9}
.sismed-demo-bar__profile:hover{background:linear-gradient(135deg,#1d4ed8,#4338ca)!important}
@media(max-width:1120px){.sismed-demo-bar__guide{display:none}}
@media(max-width:620px){
  .demo-profile-active{overflow:auto}
  .sismed-demo-bar{min-height:44px;padding:5px 7px}
  .sismed-demo-bar__icon{width:30px;height:30px}
  .sismed-demo-bar__copy strong{font-size:.63rem}
  .sismed-demo-bar__copy small{font-size:.52rem;max-width:155px}
  .sismed-demo-bar__actions a,.sismed-demo-bar__actions button{width:34px;height:32px;padding:0!important;font-size:0;gap:0}
  .sismed-demo-bar__profile span,.sismed-demo-bar__profile b,.sismed-demo-bar__profile i{display:none}
}

/* V119 — maior aproveitamento da seleção de perfis + destaque do modo Demo + confirmação própria. */
@media (min-width:901px) and (min-height:700px){
  .demo-profile-active .demo-public-main{width:min(1540px,calc(100% - 24px));padding:10px 0 12px}
  .demo-profile-active .demo-profile-shell{max-width:1490px}
  .demo-profile-active .demo-session-strip{margin-bottom:10px;padding:10px 17px}
  .demo-profile-active .demo-session-strip b{font-size:.88rem}
  .demo-profile-active .demo-session-strip small{font-size:.72rem}
  .demo-profile-active .demo-profile-grid{grid-template-columns:minmax(0,1fr) 420px;gap:16px}
  .demo-profile-active .demo-profile-main{padding:20px 28px}
  .demo-profile-active .demo-profile-main h1{font-size:clamp(2.65rem,3.2vw,3.35rem);margin:8px 0 9px}
  .demo-profile-active .demo-profile-main>p{font-size:1.06rem;line-height:1.4;max-width:940px}
  .demo-profile-active .demo-eyebrow{font-size:.78rem}
  .demo-profile-active .demo-profile-options{gap:6px;margin-top:13px}
  .demo-profile-active .demo-profile-card button,.demo-profile-active .demo-full-card button{min-height:57px;padding:7px 13px;grid-template-columns:43px minmax(0,1fr) 22px;gap:12px}
  .demo-profile-active .demo-profile-icon,.demo-profile-active .demo-full-card button>span:first-child{width:41px;height:41px;font-size:1.18rem}
  .demo-profile-active .demo-profile-card strong,.demo-profile-active .demo-full-card strong{font-size:1.02rem}
  .demo-profile-active .demo-profile-card small,.demo-profile-active .demo-full-card small{font-size:.76rem;line-height:1.2}
  .demo-profile-active .demo-feedback-invite{margin-top:10px;padding-top:10px}
  .demo-profile-active .demo-feedback-invite strong{font-size:.92rem}
  .demo-profile-active .demo-feedback-invite small{font-size:.72rem}
  .demo-profile-active .demo-feedback-invite .demo-secondary{font-size:.74rem}
  .demo-profile-active .demo-ready-card{padding:19px 22px}
  .demo-profile-active .demo-ready-kicker{font-size:.73rem}
  .demo-profile-active .demo-ready-card h2{font-size:1.85rem;line-height:1.05;margin:7px 0}
  .demo-profile-active .demo-ready-card>p{font-size:.82rem}
  .demo-profile-active .demo-ready-stat strong{font-size:1.95rem}
  .demo-profile-active .demo-ready-stat span{font-size:.75rem}
  .demo-profile-active .demo-ready-card li{font-size:.71rem}
  .demo-profile-active .demo-ready-docs strong{font-size:.82rem}
  .demo-profile-active .demo-ready-docs small{font-size:.68rem}
  .demo-profile-active .demo-ready-actions button{font-size:.67rem}
}
@media (min-width:901px) and (min-height:820px){
  .demo-profile-active .demo-profile-main h1{font-size:3.45rem}
  .demo-profile-active .demo-profile-main>p{font-size:1.1rem}
  .demo-profile-active .demo-profile-card strong,.demo-profile-active .demo-full-card strong{font-size:1.06rem}
  .demo-profile-active .demo-profile-card small,.demo-profile-active .demo-full-card small{font-size:.79rem}
}

/* Barra Demo: cor propositalmente diferente do restante do sistema para deixar
   inequívoco que o visitante está em uma instância de teste. */
.sismed-demo-bar{min-height:52px;background:linear-gradient(100deg,#173f9f 0%,#315bd5 52%,#6046db 100%);border-bottom:1px solid rgba(255,255,255,.24);box-shadow:0 5px 18px rgba(29,63,145,.22);color:#fff}
.sismed-demo-bar__icon{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);box-shadow:none;color:#fff}
.sismed-demo-bar__copy strong{color:#fff;font-size:.78rem;text-shadow:0 1px 1px rgba(0,0,0,.08)}
.sismed-demo-bar__copy small{color:#e9efff;font-size:.61rem}
.sismed-demo-bar__guide{color:#dbe7ff}
.sismed-demo-bar__actions a,.sismed-demo-bar__actions button{background:rgba(255,255,255,.96);border-color:rgba(255,255,255,.48);color:#223b78;box-shadow:0 2px 6px rgba(9,30,82,.12)}
.sismed-demo-bar__actions a:hover,.sismed-demo-bar__actions button:hover{background:#fff;border-color:#fff;box-shadow:0 5px 12px rgba(9,30,82,.18)}
.sismed-demo-bar__profile{background:#fff!important;color:#2549aa!important;box-shadow:0 3px 10px rgba(12,35,91,.18)!important}
.sismed-demo-bar__profile span{color:#5d6f9b;opacity:1}
.sismed-demo-bar__profile b{color:#2549aa}
.sismed-demo-bar__profile i{color:#6046db}
.sismed-demo-bar__profile:hover{background:#f7f9ff!important}

/* Modal próprio de restauração: substitui o confirm() do navegador. */
.sismed-demo-confirm-modal{position:fixed;inset:0;z-index:96000;display:none;place-items:center;padding:18px;font-family:Inter,Segoe UI,system-ui,sans-serif}
.sismed-demo-confirm-modal.is-open{display:grid}
.sismed-demo-confirm-modal__backdrop{position:absolute;inset:0;background:rgba(8,18,45,.68);backdrop-filter:blur(5px)}
.sismed-demo-confirm-modal__dialog{position:relative;width:min(500px,100%);overflow:hidden;background:#fff;border:1px solid #d8e3f5;border-radius:24px;padding:28px 28px 24px;box-shadow:0 32px 90px rgba(8,24,63,.38);text-align:left}
.sismed-demo-confirm-modal__close{position:absolute;right:16px;top:16px;width:36px;height:36px;border:1px solid #dbe4f2;border-radius:10px;background:#f8fbff;color:#40506c;font-size:1.25rem;cursor:pointer}
.sismed-demo-confirm-modal__icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#e6efff,#ece9ff);color:#315bd5;font-size:1.55rem;font-weight:900;margin-bottom:16px}
.sismed-demo-confirm-modal__eyebrow{display:block;color:#315bd5;font-size:.68rem;letter-spacing:.095em;font-weight:950;margin-bottom:7px}
.sismed-demo-confirm-modal__dialog h3{font-size:1.55rem;line-height:1.1;letter-spacing:-.025em;color:#102044;margin:0 44px 10px 0}
.sismed-demo-confirm-modal__dialog>p{font-size:.86rem;line-height:1.55;color:#5d6d86;margin:0}
.sismed-demo-confirm-modal__note{display:flex;gap:9px;align-items:flex-start;margin:18px 0;padding:11px 12px;border-radius:12px;background:#f1f6ff;color:#36527f;font-size:.73rem;line-height:1.4;font-weight:700}
.sismed-demo-confirm-modal__note>span:first-child{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;border-radius:50%;background:#dbeafe;color:#2563eb}
.sismed-demo-confirm-modal__note.is-error{background:#fff1f2;color:#9f1239}.sismed-demo-confirm-modal__note.is-error>span:first-child{background:#ffe4e6;color:#be123c}
.sismed-demo-confirm-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}
.sismed-demo-confirm-modal__actions button{min-height:45px;border-radius:11px;border:1px solid #d6e0ee;background:#fff;color:#334155;font-weight:850;font-size:.78rem;cursor:pointer}
.sismed-demo-confirm-modal__actions button.is-primary{border-color:transparent;background:linear-gradient(135deg,#2563eb,#5746df);color:#fff;box-shadow:0 8px 18px rgba(63,70,210,.2)}
.sismed-demo-confirm-modal__actions button:disabled{opacity:.65;cursor:wait}
@media(max-width:620px){
  .sismed-demo-bar{min-height:46px}
  .sismed-demo-bar__copy strong{font-size:.65rem}.sismed-demo-bar__copy small{color:#eef3ff}
  .sismed-demo-confirm-modal{padding:0;align-items:end}.sismed-demo-confirm-modal__dialog{width:100%;border-radius:22px 22px 0 0;padding:24px 18px 20px}.sismed-demo-confirm-modal__actions{grid-template-columns:1fr}
}

/* V120 — seleção de perfis mais aproveitada, painel lateral maior, ações explícitas
   e destaque periódico dos controles exclusivos do Ambiente Demo. */
@media (min-width:1100px) and (min-height:720px){
  .demo-profile-active .demo-public-main{width:min(1600px,calc(100% - 18px));padding:8px 0 10px}
  .demo-profile-active .demo-profile-shell{max-width:1550px}
  .demo-profile-active .demo-profile-grid{grid-template-columns:minmax(0,1fr) 470px;gap:18px}
  .demo-profile-active .demo-profile-main{padding:19px 30px}
  .demo-profile-active .demo-profile-main h1{font-size:clamp(2.9rem,3.35vw,3.65rem);margin:7px 0 8px}
  .demo-profile-active .demo-profile-main>p{font-size:1.11rem;line-height:1.36;max-width:980px}
  .demo-profile-active .demo-profile-card strong,.demo-profile-active .demo-full-card strong{font-size:1.08rem}
  .demo-profile-active .demo-profile-card small,.demo-profile-active .demo-full-card small{font-size:.79rem;line-height:1.18}
  .demo-profile-active .demo-ready-card{padding:24px 26px;min-height:100%;justify-content:center}
  .demo-profile-active .demo-ready-kicker{font-size:.78rem}
  .demo-profile-active .demo-ready-card h2{font-size:2.15rem;line-height:1.03;margin:8px 0 8px}
  .demo-profile-active .demo-ready-card>p{font-size:.88rem;line-height:1.36;margin-bottom:12px}
  .demo-profile-active .demo-ready-stat{padding:12px 15px}
  .demo-profile-active .demo-ready-stat strong{font-size:2.15rem}
  .demo-profile-active .demo-ready-stat span{font-size:.8rem}
  .demo-profile-active .demo-ready-card ul{gap:7px 14px;margin:13px 0}
  .demo-profile-active .demo-ready-card li{font-size:.75rem;line-height:1.2}
  .demo-profile-active .demo-ready-docs strong{font-size:.88rem}
  .demo-profile-active .demo-ready-docs small{font-size:.72rem;line-height:1.35}
  .demo-profile-active .demo-ready-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
  .demo-profile-active .demo-ready-action{min-height:58px!important;padding:9px 11px!important;display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-items:center!important;text-align:left!important;font-size:inherit!important}
  .demo-profile-active .demo-ready-action>span{grid-row:1/3;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:1.05rem}
  .demo-profile-active .demo-ready-action>b{font-size:.83rem;line-height:1.05;color:#fff}
  .demo-profile-active .demo-ready-action>small{font-size:.61rem;color:#dce7ff;line-height:1.1}
  .demo-profile-active .demo-ready-action.is-reset{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.34)}
  .demo-profile-active .demo-ready-action.is-exit{background:rgba(9,20,60,.18);border-color:rgba(255,255,255,.3)}
}

.demo-profile-action-modal{position:fixed;inset:0;z-index:97000;display:none;place-items:center;padding:18px;font-family:Inter,Segoe UI,system-ui,sans-serif}.demo-profile-action-modal.is-open{display:grid}.demo-profile-action-backdrop{position:absolute;inset:0;background:rgba(8,18,45,.7);backdrop-filter:blur(5px)}.demo-profile-action-dialog{position:relative;width:min(520px,100%);background:#fff;border:1px solid #d9e4f5;border-radius:24px;padding:28px;box-shadow:0 34px 90px rgba(7,21,58,.4)}.demo-profile-action-close{position:absolute;right:15px;top:15px;width:36px;height:36px;border-radius:10px;border:1px solid #dbe4f2;background:#f8fbff;color:#40506c;font-size:1.25rem;cursor:pointer}.demo-profile-action-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#e7efff,#ebe9ff);color:#315bd5;font-size:1.6rem;font-weight:900;margin-bottom:14px}.demo-profile-action-icon.is-exit{color:#7c3aed}.demo-profile-action-dialog>span{display:block;color:#315bd5;font-size:.68rem;letter-spacing:.095em;font-weight:950}.demo-profile-action-dialog h2{font-size:1.65rem;line-height:1.08;letter-spacing:-.025em;color:#102044;margin:7px 44px 10px 0}.demo-profile-action-dialog p{font-size:.88rem;line-height:1.55;color:#5d6d86;margin:0}.demo-profile-action-note{margin:18px 0;padding:11px 12px;border-radius:12px;background:#f1f6ff;color:#36527f;font-size:.75rem;line-height:1.4;font-weight:750}.demo-profile-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.demo-profile-action-buttons button{min-height:46px;border-radius:11px;border:1px solid #d6e0ee;background:#fff;color:#334155;font-weight:850;font-size:.79rem;cursor:pointer}.demo-profile-action-buttons button.is-primary{border:0;background:linear-gradient(135deg,#2563eb,#5746df);color:#fff}.demo-profile-action-buttons button.is-danger{border:0;background:linear-gradient(135deg,#334155,#6d28d9);color:#fff}.demo-profile-processing,.sismed-demo-processing{position:fixed;inset:0;z-index:99000;background:linear-gradient(145deg,rgba(22,55,135,.95),rgba(83,70,205,.94));backdrop-filter:blur(6px);display:none;place-items:center;padding:20px;color:#fff;font-family:Inter,Segoe UI,system-ui,sans-serif}.demo-profile-processing.is-open,.sismed-demo-processing.is-open{display:grid}.demo-profile-processing section,.sismed-demo-processing section{width:min(520px,100%);text-align:center}.demo-profile-processing h2,.sismed-demo-processing h3{font-size:1.45rem;margin:16px 0 8px}.demo-profile-processing p,.sismed-demo-processing p{color:#dbe7ff;font-size:.82rem;line-height:1.5}.demo-profile-processing section>div,.sismed-demo-processing section>div{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:16px}.demo-profile-processing b,.sismed-demo-processing b{font-size:.62rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);padding:7px 10px;border-radius:999px}

/* Pulso discreto a cada ~3 s somente no agrupamento de controles do Demo. */
.sismed-demo-bar__actions{position:relative;border-radius:12px}.sismed-demo-bar__actions::after{content:"";position:absolute;inset:-4px;border:1px solid transparent;border-radius:14px;pointer-events:none;animation:sismedDemoControlsPulse 3s ease-in-out infinite}@keyframes sismedDemoControlsPulse{0%,76%,100%{border-color:transparent;box-shadow:0 0 0 0 rgba(255,255,255,0)}86%{border-color:rgba(255,255,255,.85);box-shadow:0 0 0 3px rgba(191,219,254,.18)}93%{border-color:rgba(224,231,255,.55);box-shadow:0 0 0 1px rgba(224,231,255,.1)}}
.sismed-demo-confirm-modal__icon.is-exit{color:#6d28d9}.sismed-demo-confirm-modal__actions button.is-danger{border-color:transparent;background:linear-gradient(135deg,#334155,#6d28d9);color:#fff;box-shadow:0 8px 18px rgba(67,56,202,.18)}
@media(max-width:620px){.demo-profile-action-modal{padding:0;align-items:end}.demo-profile-action-dialog{width:100%;border-radius:22px 22px 0 0;padding:24px 18px 20px}.demo-profile-action-buttons{grid-template-columns:1fr}.sismed-demo-bar__actions [data-demo-exit]::before{content:"↗"}}
@media(prefers-reduced-motion:reduce){.sismed-demo-bar__actions::after{animation:none}}


/* V122 — vitrine pública em uma única viewport no desktop + retorno silencioso à Home.
   Também preserva a seleção de perfis V118/V119 sem alterar os módulos operacionais. */
.demo-home-form{margin:0;padding:0;display:inline-flex;align-items:center}
.demo-home-button{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0;font-family:inherit;cursor:pointer}
.demo-home-button:hover{color:var(--demo-blue)}
@media (min-width:901px) and (min-height:700px){
  .demo-public-body:not(.demo-profile-active){overflow:hidden}
  .demo-public-body:not(.demo-profile-active) .demo-public-main{height:calc(100vh - 72px);min-height:0;padding:14px 0 16px;display:flex;align-items:center}
  .demo-public-body:not(.demo-profile-active) .demo-hero{width:100%;height:100%;min-height:0;align-items:center;gap:clamp(28px,5vw,68px)}
  .demo-public-body:not(.demo-profile-active) .demo-hero-copy{max-width:650px}
  .demo-public-body:not(.demo-profile-active) .demo-hero h1{font-size:clamp(2.7rem,4.3vw,4rem);margin:10px 0 13px}
  .demo-public-body:not(.demo-profile-active) .demo-lead{font-size:clamp(.96rem,1.2vw,1.08rem);line-height:1.5}
  .demo-public-body:not(.demo-profile-active) .demo-trust-grid{margin:18px 0 17px;gap:7px 14px}
  .demo-public-body:not(.demo-profile-active) .demo-trust-grid span{font-size:.78rem}
  .demo-public-body:not(.demo-profile-active) .demo-alert{margin:10px 0;padding:9px 11px;font-size:.72rem}
  .demo-public-body:not(.demo-profile-active) .demo-start-button{min-height:50px}
  .demo-public-body:not(.demo-profile-active) .demo-preview{padding:16px 18px;border-radius:24px}
  .demo-public-body:not(.demo-profile-active) .demo-preview-head{padding-bottom:11px}
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics{margin:11px 0}
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics>div{padding:10px 10px}
  .demo-public-body:not(.demo-profile-active) .demo-flow{padding:5px 0 9px}
  .demo-public-body:not(.demo-profile-active) .demo-preview-patient{padding:8px 4px}
  .demo-public-body:not(.demo-profile-active) .demo-preview-docs{padding:8px 9px;margin-top:7px}
}
@media (max-width:760px){
  .demo-public-top-actions{gap:10px}
  .demo-home-button{font-size:.67rem}
}
@media (max-width:620px){
  .demo-public-top-actions .demo-home-form{display:inline-flex}
  .demo-home-button{font-size:0}
  .demo-home-button::before{content:"← Início";font-size:.68rem;font-weight:850}
}

/* V123 — vitrine pública ampliada no desktop.
   Usa melhor largura e altura disponíveis sem alterar a seleção de perfis
   ou qualquer módulo operacional do SisMed. */
@media (min-width:1100px) and (min-height:760px){
  .demo-public-body:not(.demo-profile-active) .demo-public-main{
    width:min(1480px,calc(100% - 48px));
    height:calc(100vh - 72px);
    padding:clamp(42px,6vh,64px) 0 18px;
    align-items:flex-start;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero{
    width:100%;
    height:auto;
    min-height:0;
    grid-template-columns:minmax(0,1.14fr) minmax(500px,.86fr);
    gap:clamp(42px,4.8vw,76px);
    align-items:center;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero-copy{
    max-width:760px;
    padding-left:clamp(4px,1vw,14px);
  }
  .demo-public-body:not(.demo-profile-active) .demo-eyebrow{
    font-size:.74rem;
    letter-spacing:.11em;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero h1{
    max-width:760px;
    font-size:clamp(3.45rem,4.35vw,4.75rem);
    line-height:.97;
    margin:12px 0 17px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-lead{
    max-width:735px;
    font-size:clamp(1.06rem,1.18vw,1.18rem);
    line-height:1.55;
  }
  .demo-public-body:not(.demo-profile-active) .demo-trust-grid{
    margin:21px 0 20px;
    gap:9px 22px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-trust-grid span{
    font-size:.86rem;
  }
  .demo-public-body:not(.demo-profile-active) .demo-start-button{
    min-height:56px;
    padding:0 28px;
    font-size:1.03rem;
  }
  .demo-public-body:not(.demo-profile-active) .demo-start-form small{
    font-size:.75rem;
  }
  .demo-public-body:not(.demo-profile-active) .demo-alert{
    max-width:720px;
    margin:11px 0;
    padding:10px 12px;
    font-size:.76rem;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview{
    width:100%;
    max-width:620px;
    justify-self:end;
    padding:20px 22px;
    border-radius:26px;
    box-shadow:0 30px 76px rgba(37,74,145,.14);
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-head{
    padding-bottom:14px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-head strong{font-size:.96rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-head small{font-size:.7rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics{
    gap:10px;
    margin:14px 0;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics>div{
    padding:13px 12px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics strong{font-size:1.55rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-metrics small{font-size:.65rem}
  .demo-public-body:not(.demo-profile-active) .demo-flow{
    padding:6px 0 11px;
    gap:6px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-flow span{
    padding:6px 9px;
    font-size:.62rem;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-patient{
    grid-template-columns:40px minmax(0,1fr) auto;
    gap:11px;
    padding:10px 4px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-avatar{width:38px;height:38px}
  .demo-public-body:not(.demo-profile-active) .demo-preview-patient strong{font-size:.8rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-patient small{font-size:.64rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-docs{
    padding:9px 10px;
    margin-top:9px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview-docs strong{font-size:.66rem}
  .demo-public-body:not(.demo-profile-active) .demo-preview-docs span{font-size:.58rem}
}

@media (min-width:1500px) and (min-height:820px){
  .demo-public-body:not(.demo-profile-active) .demo-public-main{
    width:min(1540px,calc(100% - 56px));
    padding-top:clamp(48px,6.2vh,70px);
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero{
    grid-template-columns:minmax(0,1.16fr) minmax(520px,.84fr);
    gap:76px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero-copy{max-width:800px}
  .demo-public-body:not(.demo-profile-active) .demo-hero h1{
    max-width:800px;
    font-size:clamp(4rem,4.25vw,5rem);
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview{max-width:650px}
}

/* V124 — centralização e distribuição da vitrine pública.
   Mantém a escala aprovada na V123, mas equilibra o conjunto hero + prévia
   no centro da viewport e usa a largura de forma mais harmônica. */
@media (min-width:1100px) and (min-height:760px){
  .demo-public-body:not(.demo-profile-active) .demo-public-main{
    width:min(1400px,calc(100% - 64px));
    height:calc(100vh - 72px);
    padding:14px 0 16px;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero{
    width:100%;
    height:auto;
    min-height:0;
    grid-template-columns:minmax(0,1.08fr) minmax(500px,.92fr);
    gap:clamp(46px,4.2vw,68px);
    align-items:center;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero-copy{
    width:100%;
    max-width:720px;
    justify-self:end;
    padding-left:0;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero h1{
    max-width:720px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-lead{
    max-width:700px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview{
    width:min(100%,600px);
    max-width:600px;
    justify-self:start;
  }
}

@media (min-width:1500px) and (min-height:820px){
  .demo-public-body:not(.demo-profile-active) .demo-public-main{
    width:min(1450px,calc(100% - 72px));
    padding:16px 0 18px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero{
    grid-template-columns:minmax(0,1.07fr) minmax(540px,.93fr);
    gap:clamp(52px,4.4vw,72px);
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero-copy{
    max-width:760px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-hero h1{
    max-width:760px;
  }
  .demo-public-body:not(.demo-profile-active) .demo-preview{
    width:min(100%,620px);
    max-width:620px;
  }
}



/* V125 — identificação da instância Demo mais evidente na seleção de perfis.
   Escopo: somente a barra superior de demonstracao.php?perfis=1. */
.demo-session-strip{
  min-height:76px;
  padding:12px 14px 12px 16px;
  border:1px solid #b9c9f5;
  border-left:5px solid #4f46e5;
  background:linear-gradient(115deg,#f8fbff 0%,#eef4ff 52%,#f3f0ff 100%);
  box-shadow:0 8px 24px rgba(37,74,145,.09);
}
.demo-session-strip__main{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:12px;
  min-width:0;
  text-align:left!important;
}
.demo-session-strip__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#fff;
  background:linear-gradient(135deg,#2563eb 0%,#4f46e5 60%,#6d4df2 100%);
  box-shadow:0 7px 18px rgba(79,70,229,.22);
  font-size:1.2rem;
}
.demo-session-strip__copy{
  display:flex!important;
  flex-direction:column!important;
  min-width:0;
}
.demo-session-strip__copy b{
  color:#163a8a;
  font-size:1rem!important;
  letter-spacing:.055em;
  line-height:1.1;
}
.demo-session-strip__copy small{
  color:#536684;
  font-size:.72rem!important;
  line-height:1.3;
  margin-top:5px;
}
.demo-session-strip__identity{
  display:grid!important;
  grid-template-columns:auto auto;
  grid-template-areas:"label code" "hint hint";
  align-items:center;
  justify-content:end;
  gap:4px 9px;
  min-width:350px;
  padding:9px 13px;
  border-radius:13px;
  text-align:right!important;
  color:#fff;
  background:linear-gradient(135deg,#1d4ed8 0%,#4338ca 58%,#654cf1 100%);
  box-shadow:0 8px 20px rgba(49,46,129,.18);
}
.demo-session-strip__identity>span{
  grid-area:label;
  font-size:.59rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  color:#dce7ff;
  white-space:nowrap;
}
.demo-session-strip__identity>b{
  grid-area:code;
  color:#fff!important;
  font:950 1rem/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;
  letter-spacing:.035em!important;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.27);
  border-radius:8px;
  background:rgba(255,255,255,.12);
  white-space:nowrap;
}
.demo-session-strip__identity>small{
  grid-area:hint;
  color:#e9efff!important;
  font-size:.59rem!important;
  line-height:1.2;
  margin-top:1px!important;
}
@media (min-width:901px) and (min-height:700px){
  .demo-profile-active .demo-session-strip{
    min-height:76px;
    margin-bottom:12px;
    padding:11px 14px 11px 16px;
  }
  .demo-profile-active .demo-session-strip__copy b{font-size:1rem!important}
  .demo-profile-active .demo-session-strip__copy small{font-size:.72rem!important}
}
@media (max-width:900px){
  .demo-session-strip{align-items:stretch}
  .demo-session-strip__identity{min-width:0;width:auto}
}
@media (max-width:620px){
  .demo-session-strip{padding:10px 11px;border-left-width:4px}
  .demo-session-strip__main{gap:9px}
  .demo-session-strip__icon{width:38px;height:38px;flex-basis:38px;border-radius:11px;font-size:1rem}
  .demo-session-strip__copy b{font-size:.78rem!important}
  .demo-session-strip__copy small{font-size:.62rem!important}
  .demo-session-strip__identity{width:100%;grid-template-columns:1fr;grid-template-areas:"label" "code" "hint";justify-items:start;text-align:left!important;padding:9px 11px}
  .demo-session-strip__identity>b{font-size:.88rem!important}
}
