/* IP SOLUTIONS / Premium Enterprise / screen-specific layer / 2026-10-29 */
:root{--ip-max:1360px;--ip-radius-lg:20px;--ip-radius-md:14px;--ip-radius-sm:10px;--ip-focus:#14b8a6;--ip-shadow-lg:0 24px 70px rgba(7,22,41,.11);--ip-shadow-sm:0 3px 14px rgba(7,22,41,.045)}
html{scrollbar-gutter:stable}body[data-ip-screen]{background:#f8fafc;color:#0f172a;accent-color:#0d9488}body[data-ip-screen] :is(button,input,select,textarea){font-family:inherit}body[data-ip-screen] :is(button,.btn,.button,[role="button"]){min-height:40px}body[data-ip-screen] :is(.card,.panel,.asset,.step,.metric,.paper){box-shadow:var(--ip-shadow-sm)}body[data-ip-screen] :is(.card,.panel,.asset,.step,.metric,.paper){border-radius:var(--ip-radius-md)}body[data-ip-screen] :is(.card,.panel,.asset,.step,.metric){transition:box-shadow 180ms ease,border-color 180ms ease,transform 180ms ease}body[data-ip-screen] :is(.card,.panel,.asset,.step,.metric):hover{box-shadow:0 12px 32px rgba(7,22,41,.085)}body[data-ip-screen] :is(input,select,textarea){background-color:#fff;color:#0f172a}body[data-ip-screen] :is(input,select,textarea):focus-visible{border-color:#0d9488;box-shadow:0 0 0 3px rgba(20,184,166,.13)}body[data-ip-screen] :is(.muted,.note){color:#64748b}body[data-ip-screen] :is(.error,[role="alert"]){overflow-wrap:anywhere}body[data-ip-screen] :is(.actions,.filters,.toolbar){row-gap:12px}body[data-ip-screen] :is(table){width:100%}body[data-ip-screen] th{font-weight:750;letter-spacing:.015em}body[data-ip-screen] :is(.pill,.chip){border-radius:999px}body[data-ip-screen] :is(.empty){border:1px dashed #cbd5e1;border-radius:16px;background:#fff;padding:28px;color:#475569}body[data-ip-screen] :is(.eyebrow){color:#0d9488;letter-spacing:.11em;font-size:12px;font-weight:800}body[data-ip-screen] :is(.ip-brand-footer){z-index:30!important}
/* Marketing application: preserve React's DOM and runtime; only theme its outer surface */
body[data-ip-screen="marketing"]{background:#f8fafc}body[data-ip-screen="marketing"] #root{min-height:80vh}body[data-ip-screen="marketing"] :is(button,a){-webkit-tap-highlight-color:transparent}body[data-ip-screen="marketing"] img{object-fit:contain}body[data-ip-screen="marketing"] :is(section,header,footer){scroll-margin-top:90px}
/* Enterprise workspace */
body[data-ip-screen="workspace"]>header{background:linear-gradient(110deg,#071629,#0b1f3a);border-bottom:1px solid rgba(94,234,212,.2);padding-block:16px;position:relative}body[data-ip-screen="workspace"]>header nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}body[data-ip-screen="workspace"]>header nav a{display:inline-flex;padding:8px 12px;border-radius:9px;background:rgba(255,255,255,.08);color:#d5faf4;font-weight:650;text-decoration:none}body[data-ip-screen="workspace"]>header nav a:hover{background:rgba(20,184,166,.2)}body[data-ip-screen="workspace"] main{max-width:var(--ip-max);padding-top:34px}body[data-ip-screen="workspace"] .hero{background:linear-gradient(120deg,#071629 0%,#0b1f3a 70%,#10504f 100%);padding:clamp(26px,4vw,52px);border:1px solid #1d5262;border-radius:24px;box-shadow:var(--ip-shadow-lg)}body[data-ip-screen="workspace"] .hero h1{font-size:clamp(27px,3.5vw,48px);max-width:900px;line-height:1.12}body[data-ip-screen="workspace"] .hero p{max-width:860px}body[data-ip-screen="workspace"] .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}body[data-ip-screen="workspace"] .step{border-top:3px solid #0d9488;padding:22px}body[data-ip-screen="workspace"] .step b{font-size:15px}body[data-ip-screen="workspace"] .metrics{gap:14px}body[data-ip-screen="workspace"] .metric{padding:24px;border:1px solid #e2e8f0}body[data-ip-screen="workspace"] .metric strong{font-size:clamp(27px,3vw,38px);color:#0d9488;letter-spacing:-.04em}body[data-ip-screen="workspace"] .toolbar{margin-top:38px;align-items:flex-end}body[data-ip-screen="workspace"] .toolbar h2{font-size:clamp(22px,2.5vw,32px);margin:0}body[data-ip-screen="workspace"] .workspace-filters{align-items:center}body[data-ip-screen="workspace"] .workspace-filters :is(input,select){min-height:46px;border:1px solid #cbd5e1}body[data-ip-screen="workspace"] .assets{gap:18px}body[data-ip-screen="workspace"] .asset{padding:26px;border:1px solid #dce7ec}body[data-ip-screen="workspace"] .asset h3{font-size:22px;color:#0b1f3a}body[data-ip-screen="workspace"] .stagebar span{min-height:44px;display:grid;place-items:center}body[data-ip-screen="workspace"] .actions a{min-height:42px;display:inline-flex;align-items:center}body[data-ip-screen="workspace"] .next-action{border-left:3px solid #0d9488}
/* Valuation dashboard */
body[data-ip-screen="value"] .app{min-height:100vh}body[data-ip-screen="value"] aside{background:linear-gradient(180deg,#071629,#0b1f3a);border-right:1px solid rgba(255,255,255,.08)}body[data-ip-screen="value"] aside :is(button,a){border-radius:10px}body[data-ip-screen="value"] aside button.active{background:#0d9488;color:#fff}body[data-ip-screen="value"] main{min-width:0}body[data-ip-screen="value"] main>header{border-bottom:1px solid #e2e8f0;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}body[data-ip-screen="value"] .panel{border:1px solid #e2e8f0;background:#fff}body[data-ip-screen="value"] .page:not(.hidden){animation:ip-reveal .28s cubic-bezier(.22,1,.36,1) both}body[data-ip-screen="value"] :is(.btn,button){border-radius:10px}body[data-ip-screen="value"] :is(input,select,textarea){border:1px solid #cbd5e1}body[data-ip-screen="value"] .guided-value{border:1px solid #bce9e2;background:#f0fdfa;border-radius:16px}
/* Agency portal */
body[data-ip-screen="agency"] header{background:#071629;color:#fff;border-bottom:3px solid #0d9488}body[data-ip-screen="agency"] nav{background:#fff;border-bottom:1px solid #e2e8f0}body[data-ip-screen="agency"] main{max-width:var(--ip-max);margin-inline:auto;padding-inline:clamp(16px,3vw,36px)}body[data-ip-screen="agency"] h1{font-size:clamp(27px,3.5vw,44px);color:#0b1f3a}body[data-ip-screen="agency"] .panel{border:1px solid #e2e8f0;background:#fff;padding:clamp(18px,2vw,28px)}body[data-ip-screen="agency"] .controls{border-radius:18px}body[data-ip-screen="agency"] :is(button,select,input){min-height:44px}
/* Imports and reports */
body[data-ip-screen="import"] main,body[data-ip-screen="outputs"] main{max-width:var(--ip-max);margin-inline:auto}body[data-ip-screen="import"] :is(.card,.panel),body[data-ip-screen="outputs"] :is(.paper,.controls){border:1px solid #e2e8f0;background:#fff;border-radius:18px}body[data-ip-screen="import"] header,body[data-ip-screen="outputs"] .nav{border-bottom:1px solid #dbe5ec}body[data-ip-screen="outputs"] .paper,body[data-ip-screen="check-report"] .paper{background:#fff;box-shadow:0 10px 40px rgba(7,22,41,.08)}body[data-ip-screen="check-report"] header{background:#071629;color:#fff}body[data-ip-screen="check-report"] main{max-width:1200px;margin-inline:auto}body[data-ip-screen="check-report"] .paper{border-radius:16px;border:1px solid #e2e8f0}
/* CMS: shared editorial experience */
body[data-ip-screen="cms-builder"] .shell,body[data-ip-screen="editorial"] .shell,body[data-ip-screen="cases"] .shell{min-height:100vh}body[data-ip-screen="cms-builder"] aside,body[data-ip-screen="editorial"] aside,body[data-ip-screen="cases"] aside{background:#071629;color:#f8fafc}body[data-ip-screen="cms-builder"] main,body[data-ip-screen="editorial"] main,body[data-ip-screen="cases"] main{min-width:0}body[data-ip-screen="cms-builder"] :is(.card,.panel),body[data-ip-screen="editorial"] :is(.card,.panel),body[data-ip-screen="cases"] :is(.card,.panel){background:#fff;border:1px solid #e2e8f0;border-radius:16px}body[data-ip-screen="cms-builder"] .top,body[data-ip-screen="editorial"] .top,body[data-ip-screen="cases"] .top{border-bottom:1px solid #e2e8f0;padding-bottom:20px;margin-bottom:22px}body[data-ip-screen="cms-builder"] :is(.btn,button),body[data-ip-screen="editorial"] :is(.btn,button),body[data-ip-screen="cases"] :is(.btn,button){min-height:42px;border-radius:10px}
@keyframes ip-reveal{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1100px){body[data-ip-screen="workspace"] .steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){body[data-ip-screen="workspace"] .steps{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-ip-screen="workspace"] .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-ip-screen="workspace"] .assets{grid-template-columns:1fr}}
@media(max-width:650px){html{scrollbar-gutter:auto}body[data-ip-screen="workspace"] main{padding-inline:16px}body[data-ip-screen="workspace"] .hero{padding:24px}body[data-ip-screen="workspace"] .steps{grid-template-columns:1fr}body[data-ip-screen="workspace"] .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-ip-screen="workspace"] .asset{padding:18px}body[data-ip-screen="workspace"] .toolbar{display:block}body[data-ip-screen="workspace"] .workspace-filters{margin-top:14px}body[data-ip-screen="workspace"] .workspace-filters>*{width:100%;min-width:0}body[data-ip-screen="workspace"] .actions a{width:100%;justify-content:center}body[data-ip-screen="workspace"] .stagebar{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-ip-screen="agency"] main{padding-inline:16px}body[data-ip-screen] :is(.filters,.actions){flex-wrap:wrap}body[data-ip-screen] .ip-premium-responsive-table{max-width:100%}}
@media(prefers-reduced-motion:reduce){body[data-ip-screen] .page:not(.hidden){animation:none!important}body[data-ip-screen] :is(.card,.panel,.asset,.step,.metric){transform:none!important}}
@media print{body[data-ip-screen] :is(header,nav,aside,.toolbar,.controls,.actions){box-shadow:none!important}body[data-ip-screen] .paper{box-shadow:none!important;border:0!important}body[data-ip-screen="check-report"] header{background:#fff;color:#111}}


/* Enterprise accessibility & polish: conservative, compatible with existing business UI */
:root{--ip-brand-navy:#0b1f3a;--ip-brand-teal:#0d9488;--ip-text:#0f172a;--ip-muted:#64748b;--ip-border:#e2e8f0;--ip-motion:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth;scroll-padding-top:96px}body[data-ip-screen]{min-width:0;overflow-x:clip;font-family:Inter,'Be Vietnam Pro',system-ui,-apple-system,'Segoe UI',sans-serif}
body[data-ip-screen] :is(h1,h2,h3){text-wrap:balance;letter-spacing:-.025em}body[data-ip-screen] p{overflow-wrap:break-word}
body[data-ip-screen] :is(button,a,input,select,textarea,[role="button"],[tabindex]):focus-visible{outline:3px solid #14b8a6!important;outline-offset:3px!important}
body[data-ip-screen] :is(button,.btn,[role="button"]):not(:disabled){transition:background-color .18s var(--ip-motion),border-color .18s var(--ip-motion),box-shadow .18s var(--ip-motion),transform .18s var(--ip-motion)}
body[data-ip-screen] :is(button,.btn,[role="button"]):not(:disabled):active{transform:translateY(1px)}
body[data-ip-screen] :is(button,input,select,textarea){max-width:100%}
body[data-ip-screen] :is(input,textarea,select){min-height:42px}body[data-ip-screen] textarea{min-height:110px;resize:vertical}
body[data-ip-screen] :is(button,a){touch-action:manipulation}
body[data-ip-screen] :is(.panel,.card,.paper){min-width:0}
body[data-ip-screen] :is([role="alert"],.error){border-radius:10px}
body[data-ip-screen] .ip-premium-responsive-table{max-width:100%;overflow:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
body[data-ip-screen] .ip-premium-responsive-table:focus-visible{outline:3px solid #14b8a6;outline-offset:2px}
body[data-ip-screen] .ip-premium-responsive-table table{min-width:max-content}
.ip-premium-skip{position:fixed!important;z-index:99999!important;top:8px!important;left:8px!important;padding:12px 18px!important;background:#071629!important;color:white!important;border:2px solid #14b8a6!important;border-radius:10px!important;transform:translateY(-180%)!important;text-decoration:none!important}
.ip-premium-skip:focus{transform:translateY(0)!important}
@media(max-width:760px){body[data-ip-screen] :is(h1){font-size:clamp(27px,7vw,40px)}body[data-ip-screen] :is(.grid,.cards,.metrics){min-width:0}body[data-ip-screen] :is(.panel,.card,.paper){max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body[data-ip-screen] *,body[data-ip-screen] *::before,body[data-ip-screen] *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.ip-premium-skip{display:none!important}body[data-ip-screen]{overflow:visible!important}body[data-ip-screen] .ip-premium-responsive-table{overflow:visible!important}body[data-ip-screen] .ip-premium-responsive-table table{min-width:0!important}}
