/* App surfaces use the existing journal palette and typography. */
.vm-app-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);gap:clamp(32px,6vw,88px);align-items:center;padding-top:64px;padding-bottom:58px}
.vm-app-intro h1{font-size:clamp(34px,4.4vw,60px);line-height:1.2;letter-spacing:-.045em;max-width:15ch;margin:16px 0 24px}
.vm-app-intro h1>span{display:block}
.vm-app-lead{max-width:600px;font-size:18px;line-height:1.85;color:#526361}
.vm-app-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:28px}
.vm-app-hint{font-size:13px;color:#667470;margin-top:18px;line-height:1.8}
.vm-app-identity{background:#eeeFE8;border:1px solid #d8ded5;border-radius:16px;padding:44px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.vm-app-identity img{width:128px;height:128px;border-radius:28px;box-shadow:0 16px 35px #1832341c;margin-bottom:24px}
.vm-app-identity strong{font-size:26px;letter-spacing:-1px}.vm-app-identity span{font-size:12px;letter-spacing:.02em;margin-top:8px;color:#526361}.vm-app-identity p{font-size:13px;color:#526361;margin-top:20px}
.vm-app-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d8ded5;border-bottom:1px solid #d8ded5}
.vm-app-benefits article{padding:28px 28px 30px 0}.vm-app-benefits article+article{padding-left:28px;border-left:1px solid #d8ded5}
.vm-app-benefits h2{font-size:21px;line-height:1.4;margin:10px 0}.vm-app-benefits p{font-size:14px;line-height:1.9;color:#526361}
.vm-app-section{padding-top:54px;padding-bottom:46px;border-bottom:1px solid #d8ded5;scroll-margin-top:110px}.vm-app-section-heading{max-width:760px;margin-bottom:26px}.vm-app-section-heading h2{font-size:30px;line-height:1.35;margin:10px 0 16px;letter-spacing:-.035em}.vm-app-section-heading p:not(.eyebrow){color:#526361}
.vm-app-instructions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px}.vm-app-instructions details{border:1px solid #d8ded5;border-radius:8px;background:#fff;min-width:0}.vm-app-instructions summary{padding:20px;cursor:pointer;font-size:18px;font-weight:600;min-height:64px}.vm-app-instructions details[open] summary{border-bottom:1px solid #e7e9e3}.vm-app-instructions ol{padding:20px 22px 20px 42px;margin:0;list-style:decimal;font-size:14px;line-height:1.9;color:#526361}.vm-app-instructions li+li{margin-top:12px}
.vm-app-browser-note{padding:24px;background:#f0e7d9;border-radius:8px;margin-top:22px;font-size:14px;line-height:1.8}.vm-app-browser-note p{margin:8px 0}.vm-app-copy{display:flex;gap:8px;margin-top:14px}.vm-app-copy input{border:1px solid #bdc6bd;background:#fff;border-radius:4px;min-width:0;flex:1;padding:10px 12px;font:inherit;color:#183234}
.vm-app-copy button,.vm-app-update button,.vm-app-connection button,.vm-offline-screen button{border:0;border-radius:4px;cursor:pointer;background:#183234;color:white;padding:10px 14px;min-height:44px;font:inherit}
.vm-app-cached-list{list-style:none!important;padding:0!important;margin:20px 0!important}.vm-app-cached-list li{border-top:1px solid #d8ded5;padding:17px 0;display:flex;flex-direction:column;gap:5px}.vm-app-cached-list a{color:#183234;font-weight:600;line-height:1.7;text-decoration:underline;text-decoration-color:#bcc8bc;text-underline-offset:4px;overflow-wrap:anywhere}.vm-app-cached-list small{font-size:12px;color:#667470}.vm-app-library>[data-vm-cache-status]{font-size:14px;color:#526361}
.vm-app-smallprint{border:0;padding-bottom:72px;max-width:1312px}.vm-app-smallprint h2{font-size:21px;margin:0 0 14px}.vm-app-smallprint p{max-width:850px;font-size:14px;color:#526361;line-height:1.9;margin-bottom:18px}
.vm-app-connection{padding:12px max(22px,env(safe-area-inset-right)) 12px max(22px,env(safe-area-inset-left));display:flex;justify-content:center;gap:12px;align-items:center;background:#f0e7d9;color:#183234;font-size:13px;line-height:1.7}.vm-app-connection button{background:transparent;color:#183234;text-decoration:underline;white-space:nowrap;flex-shrink:0;padding:6px 10px}
.vm-app-update{position:fixed;z-index:1000;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;background:white;color:#183234;padding:16px;border:1px solid #cbd3c8;border-radius:10px;box-shadow:0 8px 40px #18323424;font-size:14px}.vm-app-update [data-vm-update-later]{background:#eef0e9;color:#183234}
.vm-app-update[hidden],.vm-app-connection[hidden],[data-vm-install][hidden],[data-vm-inapp][hidden],[data-vm-clear-cache][hidden]{display:none!important}
.vm-app-intro button:disabled,.vm-app-section button:disabled,.vm-app-update button:disabled,.vm-app-connection button:disabled,.vm-offline-screen button:disabled{opacity:.55;cursor:default}
.vm-app-intro :focus-visible,.vm-app-section :focus-visible,.vm-app-update :focus-visible,.vm-app-connection :focus-visible,.vm-offline-screen :focus-visible{outline:3px solid #ad793a;outline-offset:4px}
.vm-offline-screen{margin:0;background:#f8f7f3;color:#183234;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8;padding:max(32px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.vm-offline-screen *{box-sizing:border-box}.vm-offline-screen main{max-width:650px;margin:30px auto}.vm-offline-screen img{border-radius:16px}.vm-offline-screen .eyebrow{font-size:11px;letter-spacing:.14em;margin-top:22px}.vm-offline-screen h1{font-size:clamp(28px,5vw,40px);line-height:1.3;letter-spacing:-.03em}.vm-offline-screen h2{font-size:22px;margin-top:40px}.vm-offline-screen p{color:#526361}
@media(min-width:721px){.english .vm-app-intro h1{max-width:18ch}}
@media(max-width:1000px){.vm-app-intro{grid-template-columns:minmax(0,1fr) minmax(220px,.62fr);gap:28px}.vm-app-identity{padding:32px 20px}.vm-app-instructions{grid-template-columns:1fr}.vm-app-benefits article{padding-right:18px}.vm-app-benefits article+article{padding-left:18px}}
@media(max-width:720px){.vm-app-intro{grid-template-columns:1fr;padding-top:34px;padding-bottom:32px;gap:26px}.vm-app-intro h1{font-size:36px;margin-bottom:18px;max-width:none}.vm-app-lead{font-size:16px}.vm-app-identity{align-items:flex-start;text-align:left;position:relative;min-height:144px;padding:22px 20px 22px 108px}.vm-app-identity img{position:absolute;left:20px;top:24px;width:68px;height:68px;border-radius:16px;margin:0;box-shadow:none}.vm-app-identity strong{font-size:23px}.vm-app-identity span{font-size:11px}.vm-app-identity p{margin-top:10px;font-size:12px}.vm-app-benefits{grid-template-columns:1fr}.vm-app-benefits article,.vm-app-benefits article+article{padding:22px 0;border-left:0}.vm-app-benefits article+article{border-top:1px solid #d8ded5}.vm-app-benefits h2{font-size:20px}.vm-app-section{padding-top:34px;padding-bottom:32px}.vm-app-section-heading h2{font-size:26px}.vm-app-connection{align-items:flex-start;font-size:12px;gap:4px}.vm-app-connection button{padding:0 8px}.vm-app-update{bottom:max(12px,env(safe-area-inset-bottom));gap:10px;font-size:13px}.vm-app-update>span{width:100%}.vm-app-copy{flex-wrap:wrap}.vm-app-copy input{flex-basis:180px}.vm-app-smallprint{padding-bottom:45px}}
@media(max-width:360px){.vm-app-intro h1{font-size:32px}.vm-app-identity{padding-left:94px;padding-right:12px}.vm-app-identity img{left:16px;width:60px;height:60px}.vm-app-identity strong{font-size:21px}}
@media(display-mode:standalone){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}.utility{padding-top:env(safe-area-inset-top)}}
