/* MadeToScale reference, adapted to a financial workspace. Presentation only. */
:root{--m-radius:18px;--m-shadow:0 8px 32px #241b5708;--m-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:24px}body{font-family:'DM Sans',sans-serif}
:is(.product-home,.product-auth-page,.dashboard-shell,.press-page) :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--p-accent);outline-offset:4px}
:is(.product-home,.product-auth-page,.dashboard-shell,.press-page) button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}
:is(.product-home,.product-auth-page,.dashboard-shell) :is(h1,h2,h3){text-wrap:balance}
.product-home .product-header{max-width:1320px;padding-block:24px;border-bottom:1px solid var(--p-line)}
.product-header nav a:not(.button){min-height:44px;display:inline-flex;align-items:center}
.product-home .product-hero{max-width:1320px;padding-top:76px;gap:54px}
.product-hero h1{font-size:clamp(40px,5.9vw,78px);font-weight:600;max-width:20ch;line-height:1.04;letter-spacing:-.045em}
.hero-word{display:inline-block}.hero-editorial>p{font-size:17px;max-width:58ch}
.product-hero:before{background:radial-gradient(ellipse at 18% 80%,#daeffb80,transparent 45%),radial-gradient(ellipse at 82% 55%,#e5dfff80,transparent 47%)}
.product-home .button,.product-auth-page .button{border-radius:12px;font-size:14px;min-height:48px;padding-inline:24px;box-shadow:inset 0 1px 0 #ffffff20,0 5px 12px #4032be14}
.product-home .secondary,.product-auth-page .secondary{border-radius:12px;font-size:14px;min-height:48px}
.product-actions{margin-block:30px 18px}.hero-editorial>small{font-size:12px;line-height:1.7}
.preview-shell{max-width:1160px;border-radius:20px;box-shadow:0 30px 70px #30275c12,0 0 0 10px #9386e909}
.preview-rail{gap:24px;padding:28px 18px}.preview-main{padding:28px}.preview-metrics>div{border-radius:12px;background:var(--p-bg)}
.preview-metrics strong{font-variant-numeric:tabular-nums}.preview-checklist{border:1px solid var(--p-line);border-radius:14px}
/* The illustrative line is static until its single entry; numerical evidence never counts up. */
.product-hero .chart-trace{animation:none;stroke-dashoffset:0}
.product-strip{padding-block:28px;font-size:12px;gap:42px}.product-strip span{display:flex;align-items:center;gap:10px}
.product-strip span:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--p-accent)}
.product-section{padding-block:96px;max-width:1240px}.section-intro h2,.product-faq h2{font-size:clamp(32px,3.6vw,48px);font-weight:600;letter-spacing:-.05em}
.section-intro p{font-size:15px}.section-intro{margin-bottom:42px}
.motion-bento{grid-template-columns:1.25fr 1fr;gap:18px;border:0;border-radius:0;overflow:visible}
.motion-bento article{border:1px solid var(--p-line)!important;border-radius:20px;padding:30px;position:relative;overflow:hidden;background:var(--p-bg);min-width:0}
.motion-bento article:first-child{grid-row:span 2;display:flex;flex-direction:column;background:var(--p-soft)}
.motion-bento article:nth-child(2){background:var(--p-surface)}.motion-bento article:nth-child(3){background:var(--p-bg)}
.motion-bento .feature-number{width:42px;height:42px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:13px}
.motion-bento .feature-number svg{width:22px;height:22px;stroke:var(--p-accent);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.motion-bento h3{font-size:25px;margin:20px 0 12px}.motion-bento p{min-height:0;margin-bottom:12px;font-size:14px;max-width:50ch}
.motion-bento article>a{margin-top:auto;font-size:13px;gap:14px}.motion-bento article>a:after{content:'↗';font-size:17px}
.feature-visual{margin-block:24px;border-radius:16px;background:var(--p-surface);border:1px solid var(--p-line);padding:20px;min-width:0}
.feature-visual header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:15px;font-size:13px;border-bottom:1px solid var(--p-line)}
.feature-visual small{font-size:11px;color:var(--p-muted)}.feature-visual svg{width:100%;height:auto;margin:18px 0}
.feature-visual .demo-caption{display:block;color:var(--p-muted);font-size:11px}
.motion-bento .risk-preview{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;font-size:12px;border-bottom:1px solid var(--p-line)}
.motion-bento .risk-preview:last-child{border:0}.motion-bento .risk-preview b{font-weight:600;color:var(--p-ink)}.motion-bento .risk-meter{display:flex;gap:5px;max-width:140px;width:40%}
.motion-bento .risk-meter i{height:5px;flex:1;background:var(--p-line);border-radius:8px}.motion-bento .risk-meter i:first-child,.motion-bento .risk-meter i:nth-child(2){background:var(--p-accent)}
.readiness-preview{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 4px}.readiness-preview span{border:1px solid var(--p-line);background:var(--p-surface);padding:8px 12px;border-radius:8px;font-size:12px}
.journey{max-width:1176px;border:1px solid var(--p-line);border-radius:24px;padding:52px;gap:9%}
.journey-steps{position:relative}.journey-steps:before{content:'';position:absolute;left:17px;top:18px;bottom:40px;width:1px;background:var(--p-line)}
.journey-steps li{border:0;padding:12px 0 24px;position:relative;gap:20px}.journey-steps li>span{width:35px;min-width:35px;height:35px;background:var(--p-surface);border:1px solid var(--p-line);font-size:12px;position:relative}
.journey-steps h3{font-size:18px;margin-top:5px}.journey-steps p{font-size:13px}.journey .section-intro h2{line-height:1.12}
.product-plans article{border-radius:20px;padding:32px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;box-shadow:var(--m-shadow)}
.product-plans article h3{margin:0}.product-plans article p{margin:8px 0 18px;font-variant-numeric:tabular-nums}.product-plans article .button{margin-top:auto}
.product-faq details{padding:22px 0}.product-faq summary{font-size:15px;min-height:44px;display:list-item}.product-faq details p{font-size:14px;line-height:1.8}
.product-closing{max-width:1176px;border-radius:24px;padding-block:64px}.product-closing p{font-size:12px}
:root[data-theme=dark] .product-closing{background:#252341;border-color:#3d385e;color:var(--p-ink)}
:root[data-theme=dark] .product-closing p,:root[data-theme=dark] .product-closing .eyebrow{color:var(--p-muted)}
:root[data-theme=dark] .product-hero:before{background:radial-gradient(ellipse at 25% 70%,#282b5533,transparent 55%)}
/* Form content stays stable: entrance decorates the story, never secret fields. */
.product-auth-page .product-auth{border-radius:26px;padding:16px;box-shadow:0 20px 70px #2921440b;max-width:1200px}
.product-auth-page .login-box,.product-auth-page .auth-owner>.card{max-width:440px;padding:40px 28px}
.product-auth-page h2.login-title,.product-auth-page .card>h2{font-size:34px;letter-spacing:-1.3px}.auth-subtitle{font-size:14px}
.product-auth-page label{font-size:13px;gap:9px}.product-auth-page input:not([type=checkbox]){font-size:16px;height:50px;border-radius:10px}
.product-auth-page .auth-story{border-radius:18px;background:linear-gradient(145deg,#4334dc,#342d99);padding:36px}
.auth-story h1{font-size:clamp(30px,3.4vw,44px);line-height:1.12}.auth-story p{font-size:14px}
.auth-product-preview{transform:none;border-radius:15px;padding:22px;box-shadow:0 24px 50px #19115433}
.auth-preview-stats small{font-size:10px}.auth-preview-stats strong{font-size:14px}.auth-preview-row{font-size:11px}
.product-auth-page .quiet,.product-auth-page .auth-links{font-size:12px}.product-auth-page .form-links a{min-height:44px}
.product-auth-page #message:empty{margin:0}.product-auth-page #message:not(:empty){font-size:13px;line-height:1.7}
/* Every workspace route inherits the same card, table, form and action hierarchy. */
body[data-page=member],body[data-page=admin]{padding:18px;background:var(--p-bg)}
body[data-page] .dashboard-shell{border-radius:22px;min-height:calc(100vh - 36px)}
body[data-page] .main{padding:32px 36px 24px}body[data-page] .main>h1{font-size:29px;font-weight:600;letter-spacing:-1px;margin-bottom:28px}
body[data-page] :is(.panel,.paper-card,.risk-card,.gw-card,.plan-card,.subscriber-card,.member-card,.metric,.stat-card,.health-card){border-color:var(--p-line);border-radius:var(--m-radius);box-shadow:var(--m-shadow)}
body[data-page] :is(.paper-card,.risk-card,.panel,.gw-card){padding:24px}
body[data-page] :is(.paper-card,.risk-card,.panel,.gw-card)>h2{font-size:21px;font-weight:600;letter-spacing:-.55px;margin-top:0}
body[data-page] :is(.paper-card,.risk-card,.panel,.gw-card)>h3{font-size:17px;font-weight:600;letter-spacing:-.3px}
body[data-page] .metric{border:1px solid var(--p-line);padding:21px}.metric strong{font-variant-numeric:tabular-nums}
body[data-page] :is(.risk-field,.gw-field) :is(input:not([type=checkbox]),select,textarea){font-size:16px;min-height:48px;border-radius:10px}
body[data-page] :is(button,.button,.btn,.secondary,.gw-button){font-family:inherit;min-height:44px;border-radius:10px;font-weight:600}
body[data-page] button:not(:disabled):hover{box-shadow:0 2px 7px #30275c0c}
body[data-page] .btn-danger{box-shadow:none}body[data-page] :is(.paper-toolbar,.risk-toolbar,.gw-toolbar){gap:12px;flex-wrap:wrap;align-items:center}
body[data-page] :is(td,th){padding:15px 16px;font-size:13px;line-height:1.6;vertical-align:top}body[data-page] th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}
body[data-page] :is(.table-wrap,.table-scroll){border:1px solid var(--p-line);border-radius:14px;max-width:100%;overflow-x:auto}
body[data-page] :is(input,textarea,select){max-width:100%}body[data-page] :is(.paper-card,.risk-card,.gw-card,.panel,.member-card){min-width:0;overflow-wrap:anywhere}
body[data-page] :is(.notice,.alert){border-radius:12px;padding:14px 16px;line-height:1.7}
body[data-page] .readiness-checks{gap:12px;margin-block:18px 0}body[data-page] .readiness-checks li{border-radius:12px;background:var(--p-bg);padding:16px}
body[data-page] .readiness-checks li p{font-size:13px;line-height:1.7}body[data-page] .readiness-checks li strong{font-size:13px}
body[data-page] .workspace-appearance{display:flex;justify-content:flex-end;gap:10px;margin-top:32px;padding-top:18px;border-top:1px solid var(--p-line)}
body[data-page] .workspace-appearance .appearance-button{background:var(--p-surface);color:var(--p-muted);font-size:12px!important;min-height:44px}
body[data-page] :is(.sb-item,.nav-tab){transition:background-color .15s,color .15s}
body[data-page] :is(.sb-item.active,.nav-tab.active){background:var(--p-accent-soft);position:relative}
body[data-page] :is(.sb-item.active,.nav-tab.active):before{content:'';position:absolute;width:3px;height:18px;left:0;background:var(--p-accent);border-radius:4px}
/* Legal/contact and published articles share the product typography and surface. */
.policy-document{max-width:900px;padding-block:64px}.policy-document h1{font-size:clamp(34px,4.5vw,54px);letter-spacing:-.05em;font-weight:600}
.policy-document section{padding-block:24px;border-top:1px solid var(--p-line)}.policy-document h2{font-size:22px;font-weight:600;margin-top:0}
.policy-document p{font-size:15px;line-height:1.9;max-width:76ch}.policy-document a{text-decoration:underline;text-underline-offset:4px}
.press-page{margin:0;background:var(--p-bg);color:var(--p-ink);font:15px/1.7 'DM Sans',sans-serif;min-width:320px}
.press-page :is(header,main,footer){max-width:1200px;margin:auto;padding:32px}.press-page>header{border-bottom:1px solid var(--p-line);display:flex;align-items:center;justify-content:space-between;gap:20px}
.press-page>header>a{font-size:18px;font-weight:700;letter-spacing:-.5px}.press-page nav{display:flex;gap:24px;flex-wrap:wrap}
.press-page a{color:var(--p-accent);text-underline-offset:5px}.press-page h1{font-size:clamp(38px,5vw,62px);font-weight:600;letter-spacing:-.05em;line-height:1.1;margin-top:40px}
.press-page h2{font-size:25px;font-weight:600;letter-spacing:-.03em;line-height:1.3}.press-page p{color:var(--p-muted);line-height:1.85}
.press-page .press-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px}.press-page .press-grid article{background:var(--p-surface);border:1px solid var(--p-line);border-radius:20px;padding:28px}
.press-page article{max-width:850px}.press-page .press-grid article h2 a{color:var(--p-ink);text-decoration:none}.press-page .summary{font-size:19px}
.press-page :is(small,figcaption,footer){color:var(--p-muted)}.press-page :is(.press-video,.press-media){background:var(--p-soft);border:1px solid var(--p-line);border-radius:16px;padding:20px;margin:24px 0}
.press-page button{background:#5042d9;color:#fff;min-height:44px;border-radius:10px}.press-page>footer{border-top:1px solid var(--p-line);margin-top:60px;display:flex;gap:18px;flex-wrap:wrap}
@media(max-width:1100px){body[data-page=admin],body[data-page=member]{padding:10px}body[data-page] .main{padding:26px}.product-auth-page .auth-story{padding:28px}.auth-preview-stats strong{font-size:12px}}
@media(max-width:900px){body[data-page=admin],body[data-page=member]{padding:0}body[data-page] .dashboard-shell{border-radius:0;min-height:100vh}.product-hero{padding-top:44px!important}.product-home .product-header{margin-inline:24px;padding-inline:0}.product-header nav a:not(.button){display:flex}.motion-bento{gap:14px}.motion-bento article{padding:24px}.journey{padding:34px}.product-auth-page .auth-story{padding:26px}.product-auth-page .login-box,.product-auth-page .auth-owner>.card{padding:30px 24px}.product-auth-page .product-auth{padding:12px}.policy-page .product-header nav{display:flex;width:auto;gap:14px;flex-direction:row}.policy-page .product-header{flex-wrap:wrap}}
@media(max-width:600px){.product-home .product-header{margin-inline:6%;padding-block:16px}.product-hero h1{font-size:clamp(37px,10vw,52px);line-height:1.08}.hero-editorial>p{font-size:15px}.product-home .product-hero{gap:32px;padding-top:36px!important}.preview-main{padding:16px}.preview-shell{border-radius:16px;box-shadow:0 16px 40px #30275c0b}.product-strip{gap:12px;font-size:11px}.product-section{padding-block:58px}.motion-bento{grid-template-columns:1fr}.motion-bento article:first-child{grid-row:auto}.motion-bento article{padding:25px}.motion-bento h3{font-size:24px}.feature-visual{margin-block:20px}.journey{padding:28px}.section-intro h2,.product-faq h2{font-size:33px}.product-auth-page .login-box,.product-auth-page .auth-owner>.card{padding:24px 14px}.product-auth-page h2.login-title,.product-auth-page .card>h2{font-size:30px}.product-auth-page .auth-story{padding:24px}.auth-story h1{font-size:25px}.product-auth-page .product-auth{border-radius:20px}.policy-document{padding-block:36px}.policy-document p{font-size:14px}.policy-document h2{font-size:21px}.press-page :is(header,main,footer){padding:22px}.press-page>header{align-items:flex-start;flex-direction:column}.press-page .press-grid{grid-template-columns:1fr}.press-page h1{margin-top:24px}.press-page nav a{min-height:44px;display:inline-flex;align-items:center}body[data-page] .main{padding:24px 14px}body[data-page] .main>h1{font-size:26px;margin-bottom:24px}body[data-page] :is(.paper-card,.risk-card,.panel,.gw-card){padding:19px}body[data-page] .metric{padding:17px}body[data-page] :is(td,th){padding:12px}body[data-page] .workspace-appearance{justify-content:flex-start}}
html[data-motion=paused] *,html[data-motion=paused] *:before,html[data-motion=paused] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body[data-page] form label{font-size:13px;line-height:1.65}body[data-page] form input:not([type=checkbox]):not([type=radio]):not([type=color]),body[data-page] form textarea,body[data-page] form select{font-size:16px;border-radius:10px}body[data-page] .exchange-block{border:1px solid var(--p-line);border-radius:18px;background:var(--p-surface);padding:24px;margin-bottom:20px}body[data-page] .exchange-block h4{font-size:17px;font-weight:600;margin:0 0 18px}body[data-page] .data-scroll{border-radius:12px}body[data-page] dialog{border-radius:18px}body[data-page] .gw-hero{border-radius:20px}

.process-visual{position:relative;min-width:0}.journey-steps:before{display:none}.journey-track{position:absolute;left:17px;top:18px;bottom:40px;width:1px;background:var(--p-accent);opacity:.4;transform-origin:top}

/* Stable request feedback: label and dimensions never change; no retry or API work here. */
button[data-feedback]{position:relative}button[data-feedback=pending]:after{content:'';position:absolute;right:10px;top:calc(50% - 8px);width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:mi-request-spin .7s linear infinite}button[data-feedback=success]:after{content:'✓';position:absolute;right:10px;top:calc(50% - 10px);animation:mi-request-check .25s ease-out}button[data-feedback=error]:after{content:'!';position:absolute;right:10px;top:calc(50% - 10px)}
@keyframes mi-request-spin{to{transform:rotate(360deg)}}@keyframes mi-request-check{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
