@charset "UTF-8";
:root{--paper:#f7f4ed;--white:#fffcf7;--ink:#302d33;--muted:#706876;--purple:#583666;--line:#ded8cd;--green:#48624d;--wash:#eee7f0;color-scheme:light;font-family:Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--purple);outline-offset:5px}button{cursor:pointer}.wrap{max-width:1224px;margin:0 auto;padding:0 42px}.skip{position:absolute;top:-100px;left:20px;background:var(--white);padding:12px;z-index:2}.skip:focus{top:12px}.header{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:30px;font-weight:750;letter-spacing:-1.3px;text-decoration:none}.brand-dot{color:var(--purple)}nav{display:flex;gap:32px;font-size:15px}nav a{text-decoration:none;color:var(--muted)}nav a:hover,nav .active{color:var(--ink)}nav .active{font-weight:650}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:46px 0 34px;gap:28px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:1.8px;color:var(--purple);margin:0 0 12px}h1{font-size:clamp(38px,4vw,58px);line-height:1.1;font-weight:650;letter-spacing:-2px;margin:0}h1 em{font-family:Georgia,serif;color:var(--purple);font-weight:400}.intro-note{margin:0 0 4px;color:var(--muted);line-height:1.8}.client-panel{border:1px solid #d6cadb;background:var(--wash);border-radius:16px;padding:26px 28px;display:flex;align-items:center;gap:22px}.client-symbol{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;color:var(--purple);border:1px solid #cfc0d5;border-radius:18px;font:38px Georgia,serif}.client-copy{flex:1}.inline-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}h2{margin:0;font-size:24px;font-weight:650;letter-spacing:-.65px}.client-copy p{color:#62576a;margin:5px 0 10px}.tag{border:1px solid #b7a4bf;border-radius:5px;padding:3px 7px;font-size:10px;letter-spacing:.8px;font-weight:750;color:var(--purple);white-space:nowrap}.client-details{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;color:#65556d}.client-action{text-align:center;min-width:202px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--purple);color:#fff;padding:12px 19px;border:0;border-radius:8px;text-decoration:none;font-weight:650;font-size:15px}.button:hover{background:#43254f}.client-action small{display:block;color:#66586d;font-size:12px;margin-top:8px}.client-action details{font-size:12px;margin-top:6px}.client-action details code{display:block;max-width:245px;word-break:break-all;margin:6px 0}.client-action summary{cursor:pointer}.catalog{padding-top:44px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.section-top .eyebrow{margin-bottom:5px}.section-top h2{font-size:27px}.count{display:inline-block;font:13px Segoe UI,system-ui,sans-serif;vertical-align:middle;margin-left:12px;padding:2px 8px;border-radius:12px;background:#e7e1d9;color:var(--muted)}.count:empty{display:none}.search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:9px 13px;color:var(--muted)}.search>span{font-size:25px;line-height:1}.search input{border:0;outline:none;background:transparent;width:228px;color:var(--ink);font-size:14px}.filters{display:flex;gap:9px;margin:24px 0 20px;flex-wrap:wrap}.filter{border:1px solid var(--line);border-radius:20px;padding:7px 14px;background:transparent;font-size:14px;color:#5f5962}.filter.selected{background:var(--ink);border-color:var(--ink);color:white}.addon-list{display:grid;grid-template-columns:1fr 1fr;gap:0 34px}.addon{display:flex;gap:16px;padding:26px 0;border-top:1px solid var(--line);align-items:flex-start;min-width:0}.addon-icon{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;flex-shrink:0;background:#eae0ed;color:var(--purple);font-family:Georgia,serif;font-size:23px}.addon-icon.group{background:#e3e9df;color:#4d6647}.addon-icon.comfort{background:#f1e3cf;color:#8b653d}.addon-main{flex:1;min-width:0}.addon-title{display:flex;gap:12px;align-items:center;justify-content:space-between}.addon-title h3{font-size:18px;margin:0;letter-spacing:-.3px;overflow-wrap:anywhere}.addon-title span{font-size:12px;color:var(--muted);white-space:nowrap}.addon p{margin:8px 0 16px;font-size:14px;line-height:1.65;color:#645e66;min-height:46px}.addon-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.addon-category{font-size:12px;color:var(--muted)}.download{display:inline-flex;gap:10px;align-items:center;font-size:14px;font-weight:650;text-decoration:none;color:var(--purple)}.download:hover{text-decoration:underline}.muted{color:var(--muted)}#catalog-status{font-size:14px;color:var(--muted)}#catalog-status:empty{display:none}.how{border-top:1px solid var(--line);margin:28px 0 56px;padding-top:32px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:22px}.steps article{display:flex;gap:14px}.steps article>span{font:29px Georgia,serif;color:#a39aa5}.steps h3{margin:0 0 6px;font-size:16px}.steps p{margin:0;color:var(--muted);font-size:14px}.footer{display:flex;align-items:center;gap:25px;justify-content:space-between;min-height:90px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.brand.small{font-size:23px;color:var(--ink)}.footer>div{display:flex;gap:22px}.footer a{text-decoration:none}.prose{max-width:820px;padding-top:48px;padding-bottom:60px}.prose h1{font-size:44px;margin-bottom:28px}.prose h2{margin:32px 0 12px}.prose p,.prose li{color:#5b535f}.prose li{padding:5px 0}.prose code{background:#ebe5ee;padding:2px 5px;border-radius:4px;overflow-wrap:anywhere}.notice{background:var(--wash);border-left:3px solid var(--purple);padding:14px 20px;border-radius:0 8px 8px 0}.prose a{color:var(--purple)}
@media(max-width:1000px){.wrap{padding-left:28px;padding-right:28px}.client-symbol{display:none}.inline-title{gap:8px}.client-details{gap:7px 16px}.section-top{align-items:flex-start;flex-direction:column;gap:15px}.section-top .search{width:100%}.search input{width:100%}.addon-list{gap:0 24px}.intro-note{font-size:14px}.client-panel{padding:22px}.addon-icon{width:44px;height:44px}.addon{gap:12px}}
@media(max-width:680px){.wrap{padding-left:20px;padding-right:20px}.header{height:auto;min-height:90px;padding-top:16px;padding-bottom:16px;flex-wrap:wrap;gap:15px}.brand{font-size:26px}nav{gap:18px;font-size:14px}.intro{padding:34px 0 27px;display:block}.intro-note{margin-top:20px;font-size:15px}.client-panel{display:block}.client-action{text-align:left;margin-top:20px}.client-action small{margin-left:2px}.client-details{font-size:12px}.section-top h2{font-size:24px}.catalog{padding-top:34px}.addon-list{grid-template-columns:1fr}.addon p{min-height:0}.addon{padding:23px 0}.addon-icon{width:48px;height:48px}.steps{grid-template-columns:1fr;gap:24px}.how{margin-bottom:36px}.footer{flex-wrap:wrap;gap:10px 24px;padding-top:22px;padding-bottom:22px}.footer p{order:3;width:100%;margin:0}.prose h1{font-size:36px}}
[hidden]{display:none!important}.nav-button{border:0;background:none;padding:0;color:var(--muted);font-size:14px}.login-panel{padding:30px;background:var(--wash);border:1px solid #d6cadb;border-radius:16px;margin-bottom:36px}.login-panel p{color:#62576a;font-size:15px}.login-panel form{margin-top:23px;max-width:720px}.login-panel label{display:block;font-size:14px;font-weight:650;margin-bottom:8px}.login-fields{display:flex;gap:12px}.login-fields input,.admin-input{flex:1;min-width:0;padding:12px;border:1px solid #baacbf;border-radius:8px;background:var(--white);font:16px Segoe UI,system-ui,sans-serif}.access-list{list-style:none;padding:0}.access-list li{display:flex;justify-content:space-between;gap:18px;align-items:center;border-top:1px solid var(--line);padding:15px 0}.secret{overflow-wrap:anywhere;padding:16px;background:var(--white);border:1px solid var(--line);border-radius:8px}.admin-form{display:flex;gap:12px;flex-wrap:wrap}.access-list .filter{flex-shrink:0}.login-panel #login-status{margin-bottom:0}.login-panel #login-status:empty{display:none}@media(max-width:680px){.login-panel{padding:22px}.login-fields{flex-direction:column}.header nav{flex-wrap:wrap}.login-fields .button{justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.login-page{min-height:100vh;display:flex;flex-direction:column}.login-page>.wrap{width:100%}.login-wrap{flex:1;display:grid;place-items:center;padding-top:54px;padding-bottom:54px}.login-gate{width:100%;max-width:720px;padding:38px;margin:0}.login-gate h1{font-size:clamp(34px,4vw,48px);letter-spacing:-1.5px}.login-gate>p{max-width:590px}.login-gate form{margin-top:28px}.login-gate .login-help{font-size:13px;margin:22px 0 0;color:var(--muted)}@media(max-width:680px){.login-wrap{padding-top:28px;padding-bottom:28px}.login-gate{padding:24px}}

/* The language choice stays visible on every page, including before sign-in. */
.header{height:auto;min-height:106px;gap:18px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}
.header>nav:not(.language-switch){flex-wrap:wrap;gap:18px}
.language-switch{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:24px;white-space:nowrap}
.language-switch a{display:block;padding:7px 11px;border-radius:20px;font-size:13px;text-decoration:none;color:var(--muted)}
.language-switch a[aria-current="true"]{background:var(--purple);color:white;font-weight:650}
.language-switch a:hover{background:var(--wash);color:var(--ink)}
.language-switch a[aria-current="true"]:hover{background:var(--purple);color:white}
.client-copy,.client-action{min-width:0}
.client-action{max-width:285px}
.client-action>a:not(.button){display:inline-block;margin-top:7px;font-size:13px}
.access-list li>span{overflow-wrap:anywhere;min-width:0}
@media(max-width:1000px){.header>nav:not(.language-switch){order:3;width:100%}.language-switch{margin-left:auto}}
@media(max-width:420px){.header{gap:12px}.language-switch a{padding:7px 9px}.addon-bottom{align-items:flex-start;flex-direction:column}.access-list li{align-items:flex-start;flex-direction:column}.prose h1{font-size:32px}.admin-form>.button{width:100%}}
