/* Odontic Link demo V2.3 — clinical tech visual system */
:root{
  --bg:#ffffff;--bg-2:#f8fafc;--surface:#ffffff;--ink:#090d16;--muted:#667085;--line:#e2e8f0;
  --orange:#0066ff;--orange-2:#00d2ff;--green:#0f9f8f;--green-2:#e6fbf7;
  --tech:#090d16;--tech-2:#0f1624;--tech-line:#1f2b3d;--blue:#0066ff;--cyan:#00d2ff;
}
body.ol-demo{background:#fff;color:var(--ink);font-family:Inter,Geist,"Plus Jakarta Sans",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.ol-header{background:rgba(255,255,255,.94);border-bottom-color:#e8edf3;box-shadow:0 1px 0 rgba(9,13,22,.02)}
.ol-section-soft{background:#f8fafc}.ol-hero{background:linear-gradient(180deg,#fff 0%,#f9fbfd 100%)}
.ol-brand-mark{background:#090d16}.ol-brand-mark:before{background:#0066ff}.ol-brand-mark:after{background:#00d2ff}.ol-brand b{color:#0066ff}
.ol-brand small{letter-spacing:.075em;color:#7c8799}.ol-hero-sub{font-weight:620;color:#344054}.ol-lead{color:#667085}
.ol-eyebrow,.ol-scene-label,.ol-section-head>span,.ol-viewer-cap-grid article>small,.ol-partner-band span,.ol-benefits span{
  font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;letter-spacing:.055em
}
.ol-eyebrow{color:#475467}.ol-eyebrow span{background:#00d2ff;box-shadow:0 0 0 5px rgba(0,210,255,.10)}
.ol-btn-primary{background:#0066ff;color:#fff;box-shadow:0 10px 26px rgba(0,102,255,.22)}.ol-btn-primary:hover{background:#005be5}
.ol-btn-ghost{border-color:#d8e0ea;color:#172033;background:#fff}.ol-nav a:hover{color:#0066ff}
.ol-benefits span{background:#f8fafc;border-color:#dde5ee;color:#435168;font-size:9.5px;text-transform:uppercase}
.ol-live-card,.ol-sandbox,.ol-viewer-cap-grid article{border-color:#dce4ed;box-shadow:0 18px 50px rgba(15,23,42,.065)}
.ol-live-head,.ol-sandbox-top{border-bottom-color:#e7edf3}.ol-live-head em{color:#087f73;background:#e6fbf7}
.ol-node-center{border-color:#b9d5ff;color:#0066ff}.ol-node-patient{border-color:#a9e9df;color:#0f8f81}
.ol-route-send i{background:#0066ff}.ol-route-return i{background:#00d2ff}
.ol-live-proof{border-color:#dce4ed}.ol-proof-visual{background:#090d16}.ol-proof-visual span{border-color:rgba(0,210,255,.22)}.ol-live-proof small{color:#0066ff}.ol-live-proof button{color:#0066ff}
.ol-flow-strip{background:#090d16}.ol-flow-strip-grid>div>b{background:#121b2a;color:#00d2ff}.ol-flow-strip-grid small{color:#8f9bad}.ol-flow-strip-grid>i{color:#40516a}
.ol-step-icon.ol-orange{background:#eef4ff;color:#0066ff}.ol-step-icon.ol-green{background:#e6fbf7;color:#0f8f81}
.ol-steps-grid article,.ol-value-grid article{border-color:#e0e7ef}.ol-value-grid small{color:#0066ff}.ol-value-grid li:before{background:#e6fbf7;color:#0f8f81}
.ol-sandbox-body{min-height:455px}.ol-demo-main{padding:24px 30px 28px}.ol-scene{max-width:820px}
.ol-demo-nav,.ol-filmstrip{scrollbar-width:none;-ms-overflow-style:none}.ol-demo-nav::-webkit-scrollbar,.ol-filmstrip::-webkit-scrollbar{display:none}
.ol-role-switch{background:#f1f5f9;box-shadow:inset 0 0 0 1px #e2e8f0}.ol-role-switch button.is-active{background:#fff;color:#0f172a}
.ol-patient-card,.ol-center-ticket{box-shadow:0 4px 16px rgba(15,23,42,.025);border-color:#e0e7ef}.ol-info-row>div,.ol-form-card label{background:#f8fafc;border-color:#e2e8f0}
.ol-scene-label{color:#0066ff}.ol-green-label{color:#0f8f81}
.ol-upload-zone{background:#f8fafc;border-color:#cbd5e1}.ol-upload-icon{background:#eef4ff;color:#0066ff}.ol-upload-zone button{background:#090d16}.ol-upload-progress>div{background:#e7edf4}.ol-upload-progress span{background:linear-gradient(90deg,#0066ff,#00d2ff)}
.ol-product-proof{border-color:#dce4ed}.ol-proof-tabs{display:flex;gap:6px;padding:11px 14px;border-bottom:1px solid #e5ebf2;background:#f8fafc}.ol-proof-tabs button{border:1px solid #d8e1eb;background:#fff;color:#5d697b;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;font-family:"SFMono-Regular",Consolas,monospace;letter-spacing:.04em}.ol-proof-tabs button.is-active{background:#090d16;color:#00d2ff;border-color:#090d16}
.ol-hero-viewer{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:#090d16;padding:10px}.ol-hero-viewer>div{height:118px;border:1px solid #223048;border-radius:9px;position:relative;background:radial-gradient(circle,#26354c,#080b12 72%);overflow:hidden}.ol-hero-viewer span{position:absolute;left:7px;top:6px;color:#00d2ff;font-size:7.5px;font-weight:850;font-family:"SFMono-Regular",Consolas,monospace}.ol-hero-viewer i{position:absolute;left:50%;top:50%;background:rgba(255,255,255,.26);transform:translate(-50%,-50%)}.ol-hero-viewer i:nth-child(2){width:1px;height:72%}.ol-hero-viewer i:nth-child(3){height:1px;width:72%}
.ol-tool-ribbon{display:flex;gap:6px;align-items:center;overflow-x:auto;padding:9px 11px;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;scrollbar-width:none}.ol-tool-ribbon::-webkit-scrollbar{display:none}.ol-tool-ribbon span{flex:0 0 auto;border:1px solid #dce4ed;background:#fff;border-radius:7px;padding:6px 8px;font-size:8.5px;font-weight:760;color:#40506a;font-family:"SFMono-Regular",Consolas,monospace}
.ol-viewer-cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ol-viewer-cap-grid article{background:#fff;border-radius:18px;padding:24px;min-height:390px}.ol-viewer-cap-grid article>small{font-size:9px;font-weight:850;color:#0066ff}.ol-viewer-cap-grid h3{font-size:22px;line-height:1.18;letter-spacing:-.03em;margin:14px 0 10px}.ol-viewer-cap-grid p{font-size:12.5px;line-height:1.65;color:#667085}.ol-cap-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.ol-cap-chips span{border:1px solid #dce4ed;border-radius:8px;background:#f8fafc;padding:7px 9px;font-size:9px;font-weight:760;color:#42526a;font-family:"SFMono-Regular",Consolas,monospace}.ol-next-tools{margin-top:18px;padding-top:14px;border-top:1px solid #e8edf3;display:flex;flex-wrap:wrap;gap:7px}.ol-next-tools b{width:100%;font-size:9px;color:#7b8799}.ol-next-tools span{font-size:9px;padding:6px 8px;border-radius:7px;background:#eaf8f6;color:#087f73;font-family:"SFMono-Regular",Consolas,monospace}.ol-precise-note{margin-top:18px!important;padding:12px 13px;border-radius:10px;background:#f6f8fb;color:#667085!important;font-size:10.5px!important}
.ol-viewer-shell{border-color:#25324a;background:#090d16}.ol-viewer-top{background:#0f1624;border-bottom-color:#233048}.ol-viewer-top>span{color:#00d2ff;background:#0c2731;font-family:"SFMono-Regular",Consolas,monospace}.ol-viewer-stage{background:#090d16}.ol-mpr-demo>div{border-color:#28384f;background:radial-gradient(circle,#25344b,#070a10 72%)}.ol-mpr-demo>div span{color:#00d2ff;font-family:"SFMono-Regular",Consolas,monospace}.ol-viewer-note{background:rgba(9,13,22,.9);border-color:#26364e}.ol-filmstrip-head,.ol-filmstrip{background:#f8fafc}.ol-filmstrip button{border-color:#dbe3ec}.ol-filmstrip button.is-active{border-color:#0066ff;box-shadow:0 0 0 2px rgba(0,102,255,.12)}.ol-thumb{background:#0c111c}.ol-thumb-cbct:before{color:#00d2ff}.ol-thumb-seg{color:#2dd4bf;background:radial-gradient(circle,#102a2a,#071010)}
.ol-2d-tool-demo{border:1px solid #25324a;border-radius:14px;overflow:hidden;background:#090d16;margin-bottom:18px}.ol-2d-tool-demo .ol-tool-ribbon{background:#f8fafc}.ol-2d-tool-demo .ol-xray-demo{border-radius:0;height:260px;background:radial-gradient(circle at center,#2b3850,#080b12 72%)}
.ol-success-line{background:#e8faf6}.ol-partner-band{background:#090d16}.ol-partner-band span{color:#00d2ff}.ol-partner-band p{color:#a8b3c4}.ol-btn-light{color:#090d16}

/* V2.5 — dashboard UX polish inspired by modern browser-based radiology workspaces */
.ol-header{backdrop-filter:saturate(145%) blur(14px);-webkit-backdrop-filter:saturate(145%) blur(14px)}
.ol-header-inner{min-height:68px}.ol-nav{gap:5px;padding:4px;border:1px solid #e9eef5;background:#f8fafc;border-radius:12px}.ol-nav a{padding:8px 11px;border-radius:8px;transition:background .18s ease,color .18s ease,transform .18s ease}.ol-nav a:hover{background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.06);transform:translateY(-1px)}
.ol-btn{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.ol-btn:hover{transform:translateY(-1px)}.ol-btn-primary:hover{box-shadow:0 13px 30px rgba(0,102,255,.28)}
.ol-hero{position:relative;overflow:hidden}.ol-hero:before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-230px;background:radial-gradient(circle,rgba(0,210,255,.11),rgba(0,102,255,.025) 46%,transparent 70%);pointer-events:none}.ol-hero:after{content:"";position:absolute;width:400px;height:400px;left:-230px;bottom:-240px;background:radial-gradient(circle,rgba(0,102,255,.055),transparent 68%);pointer-events:none}.ol-hero-grid{position:relative;z-index:1}
.ol-live-card,.ol-sandbox{border-radius:16px;box-shadow:0 22px 60px rgba(15,23,42,.09),0 1px 2px rgba(15,23,42,.04);overflow:hidden}.ol-product-proof{transform:translateZ(0);transition:transform .25s ease,box-shadow .25s ease}.ol-product-proof:hover{transform:translateY(-3px);box-shadow:0 28px 70px rgba(15,23,42,.12)}
.ol-live-head,.ol-sandbox-top{background:#fff;padding-top:12px;padding-bottom:12px}.ol-live-head em{border:1px solid #bdf0e8;padding:5px 8px;border-radius:999px;font-family:"SFMono-Regular",Consolas,monospace;font-size:8px;letter-spacing:.045em}.ol-mini-brand>span,.ol-sandbox-brand>span{box-shadow:0 0 0 4px rgba(0,102,255,.07)}
.ol-proof-tabs{padding:9px 11px;gap:5px}.ol-proof-tabs button{cursor:pointer;transition:all .16s ease}.ol-proof-tabs button:hover{border-color:#b8c7db;color:#142033}.ol-proof-tabs button.is-active{box-shadow:0 4px 12px rgba(9,13,22,.12)}
.ol-hero-viewer{gap:7px;padding:9px}.ol-hero-viewer>div{border-radius:7px;box-shadow:inset 0 0 28px rgba(0,210,255,.025)}.ol-hero-viewer>div:after,.ol-mpr-demo>div:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 28%,rgba(0,210,255,.012));pointer-events:none}
.ol-tool-ribbon{position:relative;padding:8px 10px;gap:5px}.ol-tool-ribbon span{border-radius:6px;background:#fff;box-shadow:0 1px 1px rgba(15,23,42,.025);transition:border-color .16s ease,color .16s ease,background .16s ease}.ol-tool-ribbon span:hover{border-color:#a8c6ef;color:#0066ff;background:#f7fbff}
.ol-viewer-cap-grid{gap:12px}.ol-viewer-cap-grid article{border-radius:14px;box-shadow:0 10px 28px rgba(15,23,42,.045);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.ol-viewer-cap-grid article:hover{transform:translateY(-3px);border-color:#cbd8e8;box-shadow:0 18px 38px rgba(15,23,42,.075)}.ol-viewer-cap-grid article:first-child{border-color:#bfd6f7;box-shadow:0 16px 38px rgba(0,102,255,.07)}
.ol-cap-chips span{border-radius:6px;transition:all .15s ease}.ol-cap-chips span:hover{border-color:#b7cbe8;background:#f4f9ff;color:#005bd7}.ol-next-tools span{border:1px solid #cceee8;background:#effbf9}
.ol-flow-strip{box-shadow:inset 0 1px 0 rgba(255,255,255,.03),inset 0 -1px 0 rgba(255,255,255,.03)}.ol-flow-strip-grid>div{min-height:68px;align-items:center}.ol-flow-strip-grid>div>b{border:1px solid #24334a;box-shadow:inset 0 0 0 1px rgba(0,210,255,.025)}
.ol-viewer-shell{border-radius:12px;box-shadow:0 20px 52px rgba(2,8,23,.22);overflow:hidden}.ol-viewer-top{padding:10px 13px}.ol-viewer-top>span{border:1px solid #164255;border-radius:999px;padding:5px 8px}.ol-viewer-stage{border-top:1px solid #152135}.ol-mpr-demo{gap:7px;padding:9px}.ol-mpr-demo>div{position:relative;border-radius:7px;overflow:hidden}
.ol-filmstrip-head{border-top:1px solid #e4eaf1;padding-top:10px}.ol-filmstrip{gap:8px;padding:10px 12px 13px;scroll-snap-type:x proximity}.ol-filmstrip button{scroll-snap-align:start;border-radius:10px;background:#fff;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.ol-filmstrip button:hover{transform:translateY(-2px);border-color:#b9cbe2}.ol-filmstrip button.is-active{background:#f8fbff}.ol-thumb{border-radius:7px}
.ol-success-line{border:1px solid #c9efe7;border-radius:10px}.ol-section-head h2{letter-spacing:-.035em}.ol-section-head p{max-width:780px}.ol-partner-band{position:relative;overflow:hidden}.ol-partner-band:after{content:"";position:absolute;width:460px;height:460px;right:-180px;top:-220px;background:radial-gradient(circle,rgba(0,210,255,.16),transparent 66%);pointer-events:none}.ol-partner-band>.ol-wrap{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.ol-btn,.ol-nav a,.ol-product-proof,.ol-viewer-cap-grid article,.ol-filmstrip button{transition:none!important}.ol-product-proof:hover,.ol-viewer-cap-grid article:hover,.ol-filmstrip button:hover,.ol-btn:hover,.ol-nav a:hover{transform:none!important}}
@media(max-width:980px){.ol-viewer-cap-grid{grid-template-columns:1fr}.ol-viewer-cap-grid article{min-height:0}.ol-hero-viewer>div{height:145px}.ol-nav{background:transparent;border:0;padding:0}}
@media(max-width:720px){.ol-header-inner{min-height:58px}.ol-brand{gap:9px}.ol-brand-mark{width:32px;height:32px;flex-basis:32px;border-radius:9px}.ol-brand strong,.ol-brand b{font-size:15px}.ol-header .ol-btn-small{min-height:40px;padding:7px 12px;font-size:11.5px;box-shadow:0 6px 16px rgba(0,102,255,.18)}.ol-hero{padding:46px 0 38px}.ol-hero h1{font-size:39px;line-height:1.02}.ol-hero-sub{font-size:21px;line-height:1.25}.ol-benefits span{padding:6px 9px}.ol-hero-viewer{grid-template-columns:1fr}.ol-hero-viewer>div{height:92px}.ol-live-proof{grid-template-columns:88px 1fr}.ol-sandbox{border-radius:13px}.ol-sandbox-top{padding:10px 12px}.ol-demo-nav{padding:8px 10px;gap:5px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.ol-demo-nav button{scroll-snap-align:start;padding:7px 9px;background:#f8fafc;border:1px solid transparent}.ol-demo-nav button.is-active{border-color:#c8d8ee}.ol-demo-main{padding:20px 12px 24px}.ol-scene h3{font-size:25px;line-height:1.12;margin-top:8px}.ol-scene-copy{font-size:13px;margin-bottom:18px}.ol-patient-card{padding:14px}.ol-info-row{gap:8px;margin-bottom:17px}.ol-info-row>div{padding:12px}.ol-btn{min-height:46px}.ol-viewer-stage{min-height:285px}.ol-viewer-cap-grid article{padding:20px}.ol-viewer-cap-grid h3{font-size:20px}.ol-2d-tool-demo .ol-xray-demo{height:235px}.ol-tool-ribbon{padding:7px 8px}.ol-tool-ribbon span{padding:6px 7px}.ol-filmstrip{padding-left:9px;padding-right:9px}.ol-viewer-shell{border-radius:10px}}
