/* PIGA ORTHO 3D · Light Precision v3. Shared, accessible sales-preview design language.
   Pure presentation. Does not alter admission, medical, printer or payment authority. */
:root{
 --v3-ink:#113a5d;--v3-sub:#52758a;--v3-turquoise:#0ebdcc;
 --v3-light:#ecfbff;--v3-stroke:#c9e7f1;--v3-shadow:0 11px 32px rgba(14,86,136,.075);
}
html{background:#f4fcff}
body.ortho-visual-v3{background:radial-gradient(ellipse 1100px 400px at 92% -10%,#c9f4ffad 0%,transparent 80%),
 radial-gradient(ellipse 1000px 410px at 3% 48%,#dbf8ff90 0%,transparent 83%),#f4fcff!important}
body.ortho-visual-v3 .piga-rail{background:linear-gradient(180deg,#fff,#f4fcff 62%,#eaf9ff)!important;border-right:1px solid #cae7f0!important}
body.ortho-visual-v3 .piga-links a[aria-current=page]{background:linear-gradient(110deg,#d5f8fa,#e7f3ff)!important;border-color:#b6e6ee!important;color:#007caa!important}
body.ortho-visual-v3 .piga-links a:hover{background:#e0f7fb!important}
body.ortho-visual-v3 .piga-mark-icon{background:linear-gradient(120deg,#00cdbc,#068ee1)!important}
body.ortho-visual-v3>main{width:auto!important;max-width:none!important;overflow:visible!important}
.ortho-v3-masthead{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(220px,.65fr);
 align-items:center;gap:25px;width:100%;min-height:170px;padding:clamp(18px,2vw,29px) clamp(21px,2.4vw,42px);
 margin:8px 0 24px;border:1px solid #c4e6f2;border-radius:26px;
 background:linear-gradient(110deg,#fff 0%,#effcff 38%,#e3f7ff 72%,#daf5ff 100%);
 box-shadow:0 15px 34px #0e679b12;overflow:hidden}
.ortho-v3-masthead::before{content:"";position:absolute;inset:-120px -9% auto auto;z-index:-1;width:66%;height:265px;
 transform:rotate(-9deg);border:1px solid #b0e7f9a0;border-radius:50%;box-shadow:0 24px 0 -2px #b6eaff38,0 49px 0 -5px #37c9e52a}
.ortho-v3-masthead::after{content:"";position:absolute;bottom:0;left:0;right:0;height:25px;z-index:-1;
 background:linear-gradient(90deg,transparent,#b5f3f739,transparent);pointer-events:none}
.ortho-v3-mast-kicker{display:flex;gap:11px;align-items:center;color:#078da7;font-size:10px;font-weight:850;letter-spacing:.11em}
.ortho-v3-mast-kicker b{width:36px;height:36px;background:linear-gradient(135deg,#08c9c8,#0788c1);border-radius:50%;
 display:grid;place-items:center;color:#fff;letter-spacing:0;font-size:17px;box-shadow:0 6px 13px #158aa52e}
.ortho-v3-mast-title{font-size:clamp(25px,2.55vw,39px);font-weight:840;letter-spacing:-.055em;
 color:#173d64!important;margin:11px 0 6px;line-height:1.09}
.ortho-v3-mast-copy>p{max-width:840px;margin:0;font-size:clamp(12px,.98vw,15px);color:#477590;line-height:1.65}
.ortho-v3-mast-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}
.ortho-v3-mast-actions a{display:inline-flex;align-items:center;color:#116c8d!important;text-decoration:none;
 background:#fff9;border:1px solid #bce5ee;border-radius:9px;padding:7px 11px;font-size:11px;font-weight:750}
.ortho-v3-mast-actions a:hover{background:#def8fc!important;transform:translateY(-1px)}
.ortho-v3-mast-art{width:100%;height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:18px;
 background:radial-gradient(ellipse at 53% 55%,#fff,#ddf6ffb5 63%,transparent);box-shadow:inset 0 0 18px #4ec6e910}
.ortho-v3-mast-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 11px #1878a63a)}
body.ortho-page-studio .ortho-v3-mast-art img,body.ortho-page-devices .ortho-v3-mast-art img{transform:scale(1.22)}
/* Work surfaces should be genuinely usable, not squeezed into preview-sized cards */
body.ortho-visual-v3 :where(.panel,.tile,.workbench,.workspace,.inspector,.rail,.transport,.tool-card,.stepper,.paper,.guide,.support,
 .hub-panel,.module-card,.stat,.stock-wrap .item,.kpi-card){border-radius:17px!important;border-color:#d3e9f0!important;
 box-shadow:var(--v3-shadow)!important}
body.ortho-visual-v3 :where(h1,h2,h3){letter-spacing:-.025em}
body.ortho-visual-v3 :where(.panel,.workspace,.workbench,.hub-panel,.transport,.stepper,.paper){min-width:0}
body.ortho-visual-v3 :where(.section-top,.team-header,.top,.device-top,.pagebar){border-color:#d0ebf3!important}
body.ortho-visual-v3 :where(button.primary,.btn.primary,.button.primary,.top-action){
 background:linear-gradient(110deg,#069dc3,#0dc2be)!important;border-color:#039ac0!important;color:#fff!important;
 border-radius:11px!important}
body.ortho-visual-v3 input:focus-visible,body.ortho-visual-v3 select:focus-visible,
body.ortho-visual-v3 button:focus-visible,body.ortho-visual-v3 a:focus-visible{outline:3px solid #00b6d5!important;outline-offset:2px!important}
body.ortho-visual-v3 .connection-help:not([hidden]){display:block;padding:16px 20px;margin:12px 0 20px;border-radius:14px;
 background:#e7f8fd;border:1px solid #b7e2ec;color:#246d82}
body.ortho-visual-v3 .connection-help p{line-height:1.6;margin:6px 0 0}
/* Hero aligned with provided 2026 light orthodontic reference. */
.ortho-reference-brand{border-radius:25px!important;border:1px solid #b7e4ee!important;background:linear-gradient(110deg,#fff,#dffaff)!important}
.ortho-reference-brand .ref-brand-lockup strong{color:#12375d!important}
.ortho-reference-brand .ref-brand-lockup em{color:#00aeca!important}
body.ortho-visual-v3 .shell .hero{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr)!important;
 background:linear-gradient(115deg,#f9feff,#e7f9ff 54%,#e6f1ff)!important}
body.ortho-visual-v3 .hero-graphic{overflow:hidden!important;min-height:310px!important;
 background:radial-gradient(ellipse at 50% 40%,#fff,#e0f8ff 72%,#d9f3fb)!important}
body.ortho-visual-v3 .hero-graphic .ortho-hero-art{width:100%;height:min(30vw,350px);min-height:235px;
 object-fit:contain;filter:drop-shadow(0 12px 17px #167eaf42)}
body.ortho-visual-v3 .core-grid{gap:17px!important}
body.ortho-visual-v3 .module-card{min-height:240px!important;background:linear-gradient(142deg,#fff,#f4fcff)!important}
body.ortho-visual-v3 .module-card:hover{border-color:#7fcddf!important;box-shadow:0 15px 30px #177ab31f!important}
/* Wide desktop + comfortable intermediate tablet */
@media(min-width:1100px){
 body.ortho-visual-v3>main{padding-left:clamp(18px,2vw,40px)!important;padding-right:clamp(18px,2vw,40px)!important}
 body.ortho-visual-v3 :where(.owner-grid,.stock-wrap .layout,.workbench,.transport-grid,.hub-grid){column-gap:clamp(17px,1.7vw,29px)!important}
 body.ortho-page-studio #studio .two{grid-template-columns:minmax(0,2.15fr) minmax(300px,.87fr)!important}
 body.ortho-page-studio #studio #mesh{min-height:460px!important;aspect-ratio:1.65!important}
 body.ortho-page-inventory .stock-wrap .layout{grid-template-columns:minmax(0,1.55fr) minmax(330px,.95fr)!important}
 body.ortho-page-team .owner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1700px){.ortho-v3-masthead{min-height:184px}.ortho-v3-mast-art{height:175px}
 body.ortho-page-studio #studio #mesh{min-height:560px!important}}
@media(min-width:761px) and (max-width:1099px){
 .ortho-v3-masthead{grid-template-columns:1fr 230px;gap:10px}
 .ortho-v3-mast-art{height:140px}
 body.ortho-page-studio #studio .two{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 .ortho-v3-masthead{grid-template-columns:minmax(0,1fr) 100px;gap:10px;padding:15px;margin:5px 0 16px;border-radius:19px;min-height:115px}
 .ortho-v3-mast-kicker{font-size:8px;gap:7px}.ortho-v3-mast-kicker b{width:25px;height:25px;font-size:12px}
 .ortho-v3-mast-title{font-size:clamp(20px,5.3vw,28px)!important;margin:8px 0 3px}
 .ortho-v3-mast-copy>p{font-size:11px;line-height:1.48}
 .ortho-v3-mast-art{height:115px;background:transparent;box-shadow:none}
 .ortho-v3-mast-actions{grid-column:1/-1;margin-top:8px;gap:5px}
 .ortho-v3-mast-actions a{font-size:10px;padding:6px 8px}
 body.ortho-visual-v3 :where(.module-grid,.owner-grid,.hub-grid,.panels,.transport-grid){grid-template-columns:1fr!important}
 body.ortho-visual-v3 .shell .hero{grid-template-columns:1fr!important}
 body.ortho-visual-v3 .hero-graphic .ortho-hero-art{height:205px;min-height:190px}
}
@media(max-width:430px){
 .ortho-v3-masthead{grid-template-columns:1fr 70px}
 .ortho-v3-mast-art{height:95px}
 .ortho-v3-mast-actions a:nth-child(n+4){display:none}
}
@media print{.ortho-v3-masthead{background:white;box-shadow:none;min-height:auto}
 .ortho-v3-mast-art{display:none}.ortho-v3-mast-actions{display:none}}

/* Functional guided assistant: light reference-inspired conversation area */
.ortho-help-station{padding:clamp(17px,2.3vw,31px);margin:15px 0 25px;background:linear-gradient(135deg,#fff,#effbff);border:1px solid #c9e9f2;
 border-radius:21px;box-shadow:var(--v3-shadow)}
.ortho-help-head{display:flex;align-items:start;justify-content:space-between;gap:19px}
.ortho-help-head h2{color:#173f61!important;font-size:clamp(20px,2vw,29px);margin:9px 0 6px!important}
.ortho-help-head p{color:#577b8b;font-size:13px;line-height:1.6;margin:0}
.ortho-help-head button{flex-shrink:0;background:#fff;color:#187b97;border:1px solid #c3e4eb;border-radius:10px;padding:11px;cursor:pointer}
.ortho-help-prompts{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 15px}
.ortho-help-prompts button{background:#e5f9fb;color:#166c87;border:1px solid #bee7ed;
 border-radius:11px;padding:10px 13px;font-size:12px;font-weight:800;cursor:pointer}
.ortho-help-prompts button:hover{background:#d4f2f8}
.ortho-help-feed{max-height:310px;min-height:100px;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:20px;
 background:linear-gradient(160deg,#f3fcff,#fafdff);border:1px solid #daedf3;border-radius:14px}
.ortho-help-message{max-width:min(100%,780px);padding:13px 18px;border-radius:17px;border:1px solid #d7eaf0;background:white;color:#375d72}
.ortho-help-message.user{align-self:flex-end;background:#dff7fb;border-color:#a9e1e9}
.ortho-help-message b{font-size:11px;color:#078fa2;letter-spacing:.04em}
.ortho-help-message p{font-size:13px;line-height:1.7;margin:5px 0;color:#365f77}
.ortho-help-message a{display:inline-flex;padding-top:3px;color:#077eac;font-size:12px;font-weight:850;text-decoration:none}
.ortho-help-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:13px}
.ortho-help-form input{border:1px solid #c8e3ed;background:#fff;border-radius:12px;padding:13px 16px;min-width:0}
.ortho-help-form button{border:1px solid #039ac0;border-radius:12px;color:white;background:linear-gradient(105deg,#0594c4,#05bfc3);padding:12px 19px;font-weight:850;cursor:pointer}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:600px){.ortho-help-head{display:block}.ortho-help-head button{margin-top:10px}.ortho-help-feed{padding:11px}
 .ortho-help-form{grid-template-columns:1fr}.ortho-help-form button{min-height:43px}}

/* One-click install on supported browsers; truthful platform instructions elsewhere. */
.ortho-v3-install{border:1px solid #0b9dc0!important;background:linear-gradient(100deg,#078ac1,#0dc4c0)!important;
 color:#fff!important;border-radius:10px!important;padding:8px 13px!important;font:750 11px/1.4 system-ui,sans-serif;
 cursor:pointer!important;box-shadow:0 6px 17px #0c99bd1b}
.ortho-v3-install:disabled{opacity:.6;cursor:default!important}
.ortho-v3-install-hint{margin:11px 0 0;max-width:650px;padding:11px 14px;background:#ecfafb;color:#226c84;
 border:1px solid #c2e8ed;border-radius:10px;font-size:12px;line-height:1.6}

/* Operational value proposition on the real, populated dashboard */
.ops-promo{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);align-items:center;gap:20px;
 padding:22px clamp(18px,2.5vw,39px);background:linear-gradient(110deg,#faffff,#eaf9ff 58%,#dff6ff);
 border:1px solid #bce3ef;border-radius:22px;margin:24px 0;box-shadow:0 10px 30px #0b769911;overflow:hidden}
.ops-promo h2{color:#164568;font-size:clamp(20px,2.2vw,30px);letter-spacing:-.045em;line-height:1.16;margin:8px 0}
.ops-promo h2 em{font-style:normal;color:#0b9fae}
.ops-promo p{color:#5c7d90;font-size:13px;line-height:1.6;max-width:720px}
.ops-promo img{display:block;width:100%;height:155px;object-fit:contain;border-radius:15px;
 background:#fff9;border:1px solid #d5eefa}
.ops-promo-action{display:inline-flex;align-items:center;background:linear-gradient(100deg,#078cbd,#0abab5);
 color:#fff!important;padding:11px 17px;border-radius:11px;font-size:12px;font-weight:830;text-decoration:none;margin-top:6px}
.ops-promo-action:hover{background:linear-gradient(100deg,#0577a1,#078d9a)}
@media(max-width:760px){.ops-promo{grid-template-columns:1fr;padding:17px 16px;gap:11px}.ops-promo img{height:135px}}

/* Ergonomic focus mode: less chrome, larger tools, never a dead-end */
.ortho-focus-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:34px;
 padding:7px 12px!important;border-radius:10px!important;border:1px solid #7ccdde!important;
 background:#e8faff!important;color:#087894!important;font-size:11px!important;font-weight:800;cursor:pointer}
.ortho-focus-toggle:hover{background:#d4f3fc!important}
.ortho-focus-exit{position:fixed;top:13px;right:15px;z-index:210;background:#0b8da5!important;color:white!important;
 border:1px solid #007d9b!important;border-radius:12px!important;box-shadow:0 9px 25px #0755762f;
 font-size:12px!important;font-weight:850!important;padding:12px 16px!important;cursor:pointer}
.ortho-focus-exit[hidden]{display:none!important}
body.ortho-focus-mode .ortho-v3-masthead{display:none!important}
body.ortho-focus-mode .ortho-reference-brand{display:none!important}
body.ortho-focus-mode .piga-rail{display:none!important}
body.ortho-focus-mode .piga-bottom{display:none!important}
body.ortho-focus-mode.piga-has-nav{padding-left:0!important}
body.ortho-focus-mode.piga-has-nav>main{width:100%!important;max-width:none!important;
 padding:clamp(14px,1.5vw,28px)!important;margin:0!important}
body.ortho-focus-mode .shell>.hero{display:none!important}
body.ortho-focus-mode .shell>.device-entry{display:none!important}
body.ortho-focus-mode .shell>.shell-top{padding-right:188px}
body.ortho-focus-mode .shell .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.ortho-focus-mode #studio #mesh{min-height:min(70vh,850px)!important;width:100%!important}
@media(max-width:900px){
 body.ortho-focus-mode .shell .module-grid{grid-template-columns:1fr!important}
 .ortho-focus-exit{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));right:12px}
 body.ortho-focus-mode.piga-has-nav>main{padding-bottom:84px!important}
}
@media print{.ortho-focus-toggle,.ortho-focus-exit{display:none!important}}

/* Integrated case-to-lab path highlighted on existing workspace dashboard. */
.handoff-promo{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(210px,.7fr);align-items:center;gap:19px;
 padding:clamp(20px,2.5vw,35px);margin:23px 0;border:1px solid #b8e6e7;background:linear-gradient(110deg,#e4fffd,#f4feff 58%,#e2f3ff);
 border-radius:22px;box-shadow:0 12px 31px #227b9516}
.handoff-promo h2{font-size:clamp(23px,2.3vw,35px);color:#1c4664;letter-spacing:-.045em;margin:10px 0 7px}
.handoff-promo h2 em{font-style:normal;color:#078da1}
.handoff-promo p{font-size:13px;color:#578096;line-height:1.7;margin:4px 0 18px;max-width:690px}
.handoff-promo img{width:100%;max-height:205px;object-fit:contain;filter:drop-shadow(0 8px 14px #1c8db640)}
.handoff-promo .handoff-promo-action{display:inline-flex;align-items:center;text-decoration:none;font-size:12px;
 color:#fff;background:linear-gradient(110deg,#078bba,#07b9b7);border:1px solid #078bba;border-radius:11px;
 font-weight:800;padding:12px 16px}
.handoff-promo small{display:block;color:#618e9e;font-size:10px;margin-top:11px}
@media(max-width:760px){.handoff-promo{grid-template-columns:1fr;gap:5px}.handoff-promo img{max-height:130px}.handoff-promo h2{font-size:25px}}

/* One-click in-context case-to-lab handoff link inside existing case records. */
.handoff-case-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#e4f9f9;
 color:#0a7893!important;border:1px solid #b0dfe7;border-radius:10px;padding:9px 12px;
 font-size:12px;font-weight:750;white-space:normal}
.handoff-case-link:hover{background:#d2f2f6;color:#08708b!important}

/* PIGA Brain / nervous system hero in the central dashboard */
.pc-home-promo{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(160px,.7fr);align-items:center;gap:20px;
 padding:clamp(20px,2.5vw,35px);margin:21px 0 24px;border:1px solid #aee0e9;background:linear-gradient(110deg,#fff,#e2faff 67%,#dfeeff);
 border-radius:23px;box-shadow:0 12px 31px #237fa01c}
.pc-home-promo h2{font-size:clamp(23px,2.45vw,38px);line-height:1.15;margin:10px 0 7px;color:#174765;letter-spacing:-.045em}
.pc-home-promo h2 em{font-style:normal;color:#029fb4}
.pc-home-promo p{font-size:13px;color:#567c8e;line-height:1.7;margin:6px 0 18px;max-width:720px}
.pc-home-promo img{width:100%;max-height:220px;object-fit:contain;filter:drop-shadow(0 10px 15px #1376a524)}
.pc-home-go{display:inline-flex;align-items:center;padding:12px 17px;color:#fff!important;text-decoration:none;
 background:linear-gradient(110deg,#087baa,#07bdbc);border-radius:11px;font-size:12px;font-weight:830}
.pc-home-promo small{display:block;color:#7093a0;font-size:10px;margin-top:11px}
@media(max-width:760px){.pc-home-promo{grid-template-columns:1fr;gap:5px}.pc-home-promo img{max-height:140px}.pc-home-promo h2{font-size:25px}}
