/* One workspace, three signatures. The guide's examples are always local. */
.portal-welcome{--welcome-ink:#302938;--welcome-muted:#766b80;--welcome-line:#e4dce9;--welcome-plum:#4b326e;--welcome-cyan:#007a87;--welcome-scene-paper:#f1edf7;width:min(1120px,calc(100% - 64px));max-width:none;max-height:min(820px,calc(100dvh - 48px));margin:auto;padding:0;overflow:hidden;border:1px solid #ded6e6;border-radius:25px;background:#fbfaf7;color:var(--welcome-ink);box-shadow:0 24px 100px #1a102c29;font-family:Jakarta,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.portal-welcome::backdrop{background:#20162e79;backdrop-filter:blur(3px)}
.portal-welcome[open]{display:flex;flex-direction:column;animation:welcome-enter 320ms cubic-bezier(.22,.72,.2,1) both}
.portal-welcome button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-family:inherit}
.portal-welcome button:focus-visible{outline:2px solid #9770ae;outline-offset:3px}
.portal-welcome button:disabled{cursor:wait;opacity:.55}
.welcome-header{display:flex;align-items:center;gap:20px;flex:0 0 auto;padding:21px 29px 17px 34px}
.welcome-brand{display:flex;align-items:center;flex:0 0 auto;min-height:32px}
.welcome-brand img{display:block;width:148px;height:auto;max-height:32px;object-fit:contain}
.welcome-header-label{margin-left:auto;color:#81738a;font-size:11px;font-weight:400;letter-spacing:.025em}
.welcome-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #e4dce9;border-radius:13px;background:#fff;color:#796487;transition:background-color 160ms,border-color 160ms,transform 160ms}
.welcome-close .welcome-icon{width:19px;height:19px}
.welcome-icon{display:block;width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.welcome-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:0 0 auto;gap:6px;margin:0 34px 15px;padding:5px;border:1px solid #e6dfee;border-radius:14px;background:#f0edf3}
.welcome-chapter{display:flex;align-items:center;justify-content:center;gap:11px;min-width:0;min-height:47px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:#8b7d96;cursor:pointer;transition:background-color 180ms,border-color 180ms,color 180ms,box-shadow 180ms}
.welcome-chapter-index{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border:1px solid #ded4e7;border-radius:7px;color:inherit;font-size:10px;font-weight:500;font-variant-numeric:tabular-nums}
.welcome-chapter-title{min-width:0;color:inherit;font-size:12px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.welcome-chapter.is-visited{color:#796087}
.welcome-chapter.is-visited .welcome-chapter-index{border-color:#d9cce2;background:#e7dfee}
.welcome-chapter.is-current{border-color:#e0d3e9;background:#fff;color:#54346d;box-shadow:0 2px 6px #39214907}
.welcome-chapter.is-current .welcome-chapter-index{border-color:#4b326e;background:#4b326e;color:#fff}
.welcome-reading-progress{height:2px;flex:0 0 2px;margin:0 34px;border-radius:2px;background:#e9e2ee;overflow:hidden}
.welcome-reading-value{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4b326e 0%,#72618b 60%,#258a93 100%);transform:scaleX(.25);transform-origin:left center;transition:transform 460ms cubic-bezier(.22,.72,.2,1)}
.welcome-stage{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:42px;min-width:0;min-height:440px;padding:33px 34px 36px;overflow:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;scrollbar-width:thin;scrollbar-color:#d0c1db transparent}
.welcome-narrative{min-width:0;padding:8px 0 8px 5px;opacity:1}
.welcome-partners{display:flex;align-items:center;gap:20px;min-height:28px;margin-bottom:34px}
.welcome-partners img{display:block;width:auto;max-width:104px;max-height:25px;object-fit:contain}
.welcome-partners img:first-child{max-width:88px;max-height:22px}
.welcome-partners img+img{padding-left:18px;border-left:1px solid #ded5e7;box-sizing:content-box}
.welcome-eyebrow{margin:0 0 17px;color:#80668f;font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.035em}
.welcome-narrative h2{max-width:380px;margin:0;color:#342a3b;font-size:37px;font-weight:500;line-height:1.17;letter-spacing:-1.5px;overflow-wrap:anywhere}
.welcome-copy{max-width:370px;margin:23px 0 0;color:#7a6d82;font-size:14px;line-height:1.85}
.welcome-insight{font-size:12px}
.welcome-scene{position:relative;display:flex;flex-direction:column;justify-content:center;gap:15px;min-width:0;margin:0;padding:25px 23px 18px;border:1px solid #e0d8e8;border-radius:22px;background:var(--welcome-scene-paper);color:#4a355a;transition:background-color 400ms ease,border-color 400ms ease}
.portal-welcome[data-scene=documents]{--welcome-scene-paper:#edf4f2}
.portal-welcome[data-scene=progress]{--welcome-scene-paper:#edf3f5}
.portal-welcome[data-scene=conversations]{--welcome-scene-paper:#f1edf6}
.welcome-scene::before{position:absolute;inset:9px 9px auto auto;width:28px;height:28px;content:'';background:#4b326e;opacity:.07;mask:url('/assets/albatroz-symbol.svg') center/contain no-repeat;-webkit-mask:url('/assets/albatroz-symbol.svg') center/contain no-repeat;pointer-events:none}
.welcome-scene-stack{position:relative;min-width:0;overflow:hidden;transform:translate3d(var(--welcome-drag-x,0px),0,0);transition:transform 220ms cubic-bezier(.22,.72,.2,1)}
.welcome-stage.is-swiping .welcome-scene-stack{transition:none}
.welcome-scene-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:330px;background:var(--welcome-scene-paper);opacity:1;transform:none}
.welcome-scene-content.is-outgoing{position:absolute;inset:0;z-index:0;pointer-events:none}
.welcome-scene-caption{margin:0;color:#8e7b99;font-size:10px;font-weight:400;line-height:1.6;text-align:center}
.welcome-fallback{padding:24px;color:#746280;font-size:14px;line-height:1.8}
.welcome-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:0 0 auto;min-height:81px;padding:16px 34px 18px;border-top:1px solid #e6dfee;background:#fff}
.welcome-position{display:flex;align-items:center;gap:13px;min-width:0}
.welcome-count{color:#6f577d;font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.welcome-current-label{padding-left:13px;border-left:1px solid #e4dce9;color:#9989a2;font-size:11px;line-height:1.5}
.welcome-actions{display:flex;align-items:center;gap:9px}
.welcome-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:44px;min-height:46px;padding:12px 17px;border:1px solid transparent;border-radius:12px;font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;cursor:pointer;transition:background-color 160ms,border-color 160ms,transform 160ms}
.welcome-skip{margin-right:10px;color:#8c7997;background:transparent}
.welcome-back{border-color:#e3d8eb!important;color:#7e658e;background:#fff}
.welcome-back .welcome-icon,.welcome-next .welcome-icon{width:16px;height:16px;flex-basis:16px}
.welcome-next{min-width:128px;border-color:#4b326e!important;background:#4b326e;color:#fff;box-shadow:0 3px 8px #4b326e12}
.welcome-actions>button:active:not(:disabled),.welcome-close:active{transform:translateY(1px)}
@media(hover:hover){.welcome-close:hover{border-color:#c6afd5;background:#f5f0f9}.welcome-chapter:hover:not(:disabled){color:#644478;background:#faf7fd}.welcome-chapter.is-current:hover:not(:disabled){background:#fff}.welcome-next:hover:not(:disabled){border-color:#39224f!important;background:#39224f}.welcome-back:hover:not(:disabled){border-color:#c5acd5!important;background:#faf7fc}.welcome-skip:hover:not(:disabled){color:#4b326e}}
@keyframes welcome-enter{from{opacity:.6;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:940px) and (min-width:761px){.welcome-stage{gap:24px;padding-inline:28px}.welcome-narrative h2{font-size:31px;letter-spacing:-1px}.welcome-copy{font-size:13px}.welcome-scene{padding:19px 16px}.welcome-partners{gap:12px}.welcome-partners img+img{padding-left:12px}}
@media(max-width:760px){
 .portal-welcome{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:22px}
 .welcome-header{gap:14px;padding:14px 16px 12px 22px}
 .welcome-brand img{width:133px;max-height:28px}
 .welcome-header-label{margin-left:auto;max-width:80px;font-size:10px;line-height:1.5}
 .welcome-close{border-radius:12px}
 .welcome-chapters{gap:3px;margin:0 18px 12px;padding:4px;border-radius:12px}
 .welcome-chapter{flex-direction:column;gap:3px;min-height:49px;padding:5px 3px;border-radius:8px}
 .welcome-chapter-index{width:auto;height:auto;flex-basis:auto;border:0!important;border-radius:0;background:none!important;font-size:9px;font-weight:500;line-height:1.3}
 .welcome-chapter.is-current .welcome-chapter-index{color:#816095}
 .welcome-chapter-title{font-size:10px;font-weight:500;line-height:1.4}
 .welcome-reading-progress{margin-inline:20px}
 .welcome-stage{grid-template-columns:minmax(0,1fr);align-items:start;gap:22px;min-height:0;padding:19px 22px 24px}
 .welcome-narrative{padding:0}
 .welcome-partners{gap:18px;min-height:24px;margin-bottom:19px}
 .welcome-partners img{max-width:99px;max-height:23px}
 .welcome-partners img:first-child{max-width:83px;max-height:21px}
 .welcome-partners img+img{padding-left:16px}
 .welcome-eyebrow{margin-bottom:11px;font-size:10px}
 .welcome-narrative h2{max-width:420px;font-size:29px;line-height:1.2;letter-spacing:-1px}
 .welcome-copy{max-width:440px;margin-top:12px;font-size:13px;line-height:1.75}
 .welcome-scene{gap:12px;padding:19px 15px 15px;border-radius:18px}
 .welcome-scene-content{min-height:298px}
 .welcome-scene-caption{font-size:10px;line-height:1.6}
 .welcome-footer{min-height:77px;padding:14px 18px max(15px,env(safe-area-inset-bottom));gap:0}
 .welcome-position{display:none}
 .welcome-actions{width:100%;gap:8px;justify-content:flex-end}
 .welcome-actions>button{min-height:46px;padding:12px 14px;font-size:12px}
 .welcome-skip{margin:0 auto 0 0;padding-inline:7px!important}
 .welcome-back{width:46px;padding:0!important}
 .welcome-back>span{display:none}
 .welcome-next{min-width:120px}
}
@media(max-width:370px){
 .portal-welcome{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:20px}
 .welcome-header{padding:12px 12px 10px 18px;gap:8px}
 .welcome-brand img{width:126px}
 .welcome-header-label{font-size:9px;max-width:66px}
 .welcome-chapters{margin-inline:14px}
 .welcome-chapter-title{font-size:9px}
 .welcome-reading-progress{margin-inline:18px}
 .welcome-stage{padding:17px 17px 22px;gap:19px}
 .welcome-partners{margin-bottom:16px;gap:15px}
 .welcome-partners img+img{padding-left:14px}
 .welcome-narrative h2{font-size:27px;letter-spacing:-.85px}
 .welcome-copy{font-size:12px;line-height:1.75}
 .welcome-scene{padding:17px 12px 14px}
 .welcome-scene-content{min-height:290px}
 .welcome-footer{padding-inline:14px}
 .welcome-next{min-width:115px}
}
@media(max-height:570px) and (min-width:761px){.portal-welcome{max-height:calc(100dvh - 20px)}.welcome-header{padding-block:10px}.welcome-chapters{margin-bottom:9px}.welcome-stage{min-height:0;gap:25px;padding-top:20px;padding-bottom:22px}.welcome-narrative h2{font-size:29px;letter-spacing:-.9px}.welcome-copy{font-size:12px;margin-top:13px}.welcome-partners{margin-bottom:20px}.welcome-scene{padding:16px}.welcome-scene-content{min-height:290px}.welcome-footer{min-height:68px;padding-block:11px}}
@media(prefers-reduced-motion:reduce){.portal-welcome[open]{animation:none}.portal-welcome *,.portal-welcome *::before,.portal-welcome *::after{animation:none!important;transition:none!important}.welcome-actions>button:active:not(:disabled),.welcome-close:active{transform:none}}
@media(forced-colors:active){.welcome-chapter.is-current{outline:2px solid Highlight}.welcome-chapter-index{border:1px solid ButtonText!important}.welcome-reading-value{background:Highlight}}
