.auth-page{background:#f6f5ef}.login-shell{display:grid;grid-template-columns:48% 52%;min-height:100dvh}.login-story{position:relative;background:#1b4232;color:#f3f2e6;min-height:760px;padding:45px 51px;overflow:hidden;display:flex;flex-direction:column}.login-brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:inherit;z-index:2}.login-brand img{width:35px;height:41px}.login-brand>span{font:27px Arial,sans-serif;letter-spacing:5px}.brand-subtitle{display:block;font:8px Arial,sans-serif;letter-spacing:4px;margin-top:6px;color:#b8cab3}.story-center{position:relative;z-index:2;margin:100px 0 0}.login-eyebrow{font-size:9px;letter-spacing:2.4px;color:#b7c9a8}.story-center h1{font:65px/1.04 Georgia,serif;letter-spacing:-2.3px;margin:27px 0 24px}.story-center p{font:13px/1.9 Arial,sans-serif;color:#bdceba}.story-line{width:42px;height:1px;background:#809977;margin:29px 0 20px}.story-caption{font-size:8px;letter-spacing:1.6px;color:#9eb995}.story-footer{font-size:10px;color:#9cb492;margin-top:auto;position:relative;z-index:2;padding-top:65px}.botanical-window{position:absolute;right:-110px;bottom:-110px;width:410px;height:410px;border-radius:50%;overflow:hidden;opacity:.55;transform:rotate(-15deg);mix-blend-mode:luminosity}.botanical-window img{width:100%;height:100%;object-fit:cover}.login-panel{padding:51px 65px 30px;display:flex;flex-direction:column;align-items:center;position:relative}.login-top-note{font-size:9px;letter-spacing:1.8px;color:#929c86;align-self:flex-end}.login-form-wrap{width:100%;max-width:355px;margin:auto 0;padding:48px 0}.login-small-leaf{color:#769362;font-size:31px;display:block;margin-bottom:22px}.login-form-wrap h2{font:42px/1.1 Georgia,serif;letter-spacing:-1.3px;margin:0 0 17px;color:#2a4432}.login-intro{font-size:13px;line-height:1.85;color:#8b9581;margin:0 0 31px}.login-field{display:block;font-size:11px;color:#6e7c61;font-weight:500;margin-bottom:20px}.login-field[hidden]{display:none}.login-field input{display:block;width:100%;margin-top:9px;border:1px solid #dce2d1;background:#fcfdf8;color:#354f36;padding:14px 15px;border-radius:7px;font-size:13px;min-height:47px}.login-field input:focus{outline:2px solid #8ca77c;outline-offset:2px}.login-field input::placeholder{color:#adb5a2;font-size:12px}.password-wrap{display:block;position:relative}.password-wrap input{padding-right:62px}.password-wrap button{position:absolute;right:8px;top:9px;padding:9px;color:#8a9c77;font-size:10px}.login-error{font-size:11px;color:#a65b46;line-height:1.7;min-height:17px;margin:-5px 0 13px}.login-error:empty{min-height:0;margin:0 0 23px}.login-submit{display:flex;width:100%;background:#284f39;color:#f5f5e9;border-radius:7px;padding:15px 19px;min-height:48px;align-items:center;justify-content:space-between;font-size:13px;transition:background .2s}.login-submit:hover{background:#1a3e29}.login-submit span:not(.login-spinner){font-size:18px}.login-submit:disabled{opacity:.7;cursor:wait}.login-access-note{display:flex;gap:9px;margin-top:24px;font-size:10px;color:#8f9d80;line-height:1.8;align-items:flex-start}.access-dot{display:block;width:6px;height:6px;border-radius:50%;background:#90a77c;margin-top:5px;flex-shrink:0}.login-divider{height:1px;background:#e3e7da;margin:27px 0 19px}.login-prototype-note{font-size:10px;line-height:1.9;color:#a0aa90;margin:0}.login-bottom{width:100%;display:flex;justify-content:space-between;gap:15px;color:#a0aa90;font-size:9px}.login-spinner{width:15px;height:15px;border:2px solid #ffffff50;border-top-color:#fff;border-radius:50%;animation:login-spin 1s linear infinite;margin-right:10px}@keyframes login-spin{to{transform:rotate(360deg)}}.signout-button{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;color:#d0dfc8;border:1px solid #ffffff25;border-radius:6px;width:100%;padding:10px}.signout-button:hover{background:#ffffff10}
@media(min-width:1600px){.login-story{padding:55px 70px}.story-center{margin-top:110px}.story-center h1{font-size:78px}.story-center p{font-size:15px}.login-form-wrap{max-width:400px}.login-form-wrap h2{font-size:47px}.login-intro{font-size:14px}.login-field{font-size:12px}.login-field input{min-height:52px}.login-submit{min-height:52px}.botanical-window{width:520px;height:520px;right:-130px;bottom:-140px}}
@media(max-width:1000px){.login-story{padding:35px;min-height:700px}.story-center{margin-top:90px}.story-center h1{font-size:53px}.login-panel{padding:42px 35px 28px}.login-top-note{font-size:8px;letter-spacing:1.1px}.login-form-wrap h2{font-size:36px}.botanical-window{width:340px;height:340px;right:-160px}.signout-button{font-size:9px;padding:8px}}
@media(max-width:700px){.login-shell{display:block}.login-story{min-height:0;padding:25px 25px 29px}.login-brand img{width:25px;height:30px}.login-brand>span{font-size:22px}.brand-subtitle{font-size:7px}.story-center{margin:27px 0 0}.login-eyebrow{font-size:7px;letter-spacing:1.5px}.story-center h1{font-size:36px;line-height:1.1;letter-spacing:-1px;margin:15px 0 0}.story-center h1 br{display:none}.story-center p,.story-line,.story-caption,.story-footer{display:none}.botanical-window{width:200px;height:200px;bottom:-120px;right:-55px;opacity:.35}.login-panel{padding:27px 25px 23px}.login-top-note{font-size:7px;align-self:flex-start}.login-form-wrap{max-width:100%;padding:30px 0}.login-small-leaf{display:none}.login-form-wrap h2{font-size:33px}.login-intro{font-size:12px;margin-bottom:25px}.login-field{font-size:12px}.login-field input{font-size:16px;min-height:48px}.login-bottom{padding-top:5px}.login-access-note{margin-top:20px}.login-divider{margin:22px 0 15px}.signout-button{margin:0;border:0;padding:0;width:25px;font-size:0}.signout-button span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.login-spinner{animation:none}}
.login-story{background:var(--studio-sidebar,#193c30)}.auth-page{background:var(--studio-workspace,#f5f4ef)}.login-submit{background:var(--green,#244f3d)}.login-brand.actual-logo{display:block;max-width:100%;padding:13px 16px;background:#f8f6ed;border-radius:11px;z-index:2}.login-brand.actual-logo .brand-wordmark{width:100%;height:auto;max-height:none}.story-center{margin-top:72px}.story-center h1{max-width:450px}.story-center p{max-width:350px;white-space:pre-line}
@media(max-width:1000px){.login-brand.actual-logo{max-width:240px}.story-center h1{font-size:52px}}
@media(max-width:700px){.login-brand.actual-logo{max-width:175px;padding:9px 12px}.story-center{margin-top:22px}.story-center h1{font-size:34px}.login-story{padding-bottom:25px}}
.login-brand.actual-logo .stacked-logo{height:auto;min-height:72px}.login-brand.actual-logo .stacked-logo>.brand-mark{display:block;width:60px;height:70px}.login-brand.actual-logo .stacked-logo-words>span{font-size:25px;letter-spacing:1px}
@media(max-width:1000px){.login-brand.actual-logo .stacked-logo{gap:11px}.login-brand.actual-logo .stacked-logo>.brand-mark{width:49px;height:57px}.login-brand.actual-logo .stacked-logo-words>span{font-size:22px}}
@media(max-width:700px){.login-brand.actual-logo{max-width:210px}.login-brand.actual-logo .stacked-logo{min-height:50px}.login-brand.actual-logo .stacked-logo>.brand-mark{width:41px;height:48px}.login-brand.actual-logo .stacked-logo-words>span{font-size:20px;letter-spacing:.7px}}
/* The live page and owner preview share this renderer and these controls. */
.custom-portal{grid-template-columns:var(--portal-split) minmax(0,1fr);font-family:var(--portal-body-font),sans-serif;background:var(--portal-page-bg)}
.custom-portal.story-right{grid-template-columns:minmax(0,1fr) var(--portal-split)}.custom-portal.story-right .login-story{order:2}.custom-portal.form-only,.custom-portal.without-story{grid-template-columns:1fr}
.custom-portal [hidden]{display:none!important}.custom-portal .login-story{padding:var(--portal-padding);background:var(--portal-story-bg);color:var(--portal-story-ink);min-height:100dvh;text-align:var(--portal-text-align)}
.custom-portal .login-brand.actual-logo{width:var(--portal-logo-width);max-width:100%;padding:var(--portal-logo-padding);border-radius:var(--portal-logo-radius);background:var(--portal-logo-backing);opacity:var(--portal-logo-opacity)}
.custom-portal .login-brand.actual-logo .stacked-logo{min-height:0;height:auto;gap:14px}.custom-portal .login-brand.actual-logo .stacked-logo>.brand-mark{height:var(--portal-mark-height);width:calc(var(--portal-mark-height) * .865)}.custom-portal .login-brand.actual-logo .stacked-logo-words>span{font-size:var(--portal-logo-text-size)}
.custom-portal .story-center{margin-top:var(--portal-story-gap)}.custom-portal .story-center h1{font-family:var(--portal-heading-font),serif;font-size:var(--portal-title-size);color:var(--portal-story-ink);max-width:none;overflow-wrap:anywhere}
.custom-portal .story-center p{font-size:var(--portal-body-size);max-width:none}.custom-portal .story-center p,.custom-portal .story-caption,.custom-portal .login-eyebrow,.custom-portal .story-footer{color:var(--portal-story-muted);white-space:pre-line}.custom-portal .story-line{background:var(--portal-story-muted)}
.custom-portal .botanical-window{width:var(--portal-art-size);height:var(--portal-art-size);left:var(--portal-art-x);top:var(--portal-art-y);right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(var(--portal-art-rotation));border-radius:var(--portal-art-radius);opacity:var(--portal-art-opacity);mix-blend-mode:var(--portal-art-blend)}
.custom-portal .login-panel{padding:var(--portal-padding);min-width:0;background:var(--portal-page-bg)}.custom-portal .login-form-slot{width:100%;flex:1;display:flex;align-items:var(--portal-form-align);justify-content:center}.custom-portal .login-form-wrap{max-width:var(--portal-form-width);margin:0;padding:48px 0}
.custom-portal .login-form-wrap h2{font-family:var(--portal-heading-font),serif;font-size:var(--portal-welcome-size);color:var(--portal-heading-ink);overflow-wrap:anywhere}.custom-portal .login-intro{font-size:var(--portal-body-size);white-space:pre-line}
.custom-portal .login-intro,.custom-portal .login-field,.custom-portal .login-access-note,.custom-portal .login-prototype-note,.custom-portal .login-top-note,.custom-portal .login-bottom,.custom-portal .login-small-leaf,.custom-portal .portal-admin-entry{color:var(--portal-text-ink)}
.custom-portal .login-field{font-size:var(--portal-label-size);margin-bottom:var(--portal-field-gap)}.custom-portal .login-field input{min-height:var(--portal-input-height);font-size:var(--portal-input-size);border:var(--portal-input-border-width) solid var(--portal-input-border);border-radius:var(--portal-input-radius);background:var(--portal-input-bg);color:var(--portal-input-ink)}.custom-portal .login-field input::placeholder{color:var(--portal-input-ink);opacity:.5;font-size:inherit}.custom-portal .password-wrap button{color:var(--portal-text-ink)}
.custom-portal .login-submit{min-height:var(--portal-button-height);width:var(--portal-button-width);margin-left:var(--portal-button-margin-left);margin-right:var(--portal-button-margin-right);border-radius:var(--portal-button-radius);font-size:var(--portal-button-size);background:var(--portal-button-bg);color:var(--portal-button-ink);opacity:var(--portal-button-opacity);justify-content:center;gap:12px}.custom-portal .login-submit:hover{filter:brightness(.92)}.custom-portal .login-submit:disabled{opacity:.65}.custom-portal .login-error{color:var(--portal-error-ink)}
.custom-portal .login-access-note>span:last-child,.custom-portal .login-prototype-note{white-space:pre-line}.custom-portal .portal-admin-entry{font-size:10px;margin-top:20px;align-self:center;text-underline-offset:4px}.custom-portal .access-dot{background:var(--portal-text-ink)}
@media(max-width:700px){.custom-portal,.custom-portal.story-right{display:flex;flex-direction:column}.custom-portal.story-right .login-story{order:0}.custom-portal .login-story{min-height:0;padding:min(var(--portal-padding),30px)}.custom-portal .login-panel{padding:min(var(--portal-padding),30px);min-height:65dvh}.custom-portal .login-brand.actual-logo{max-width:min(100%,var(--portal-logo-width));width:min(var(--portal-logo-width),260px)}.custom-portal .story-center{margin-top:min(var(--portal-story-gap),40px)}.custom-portal .story-center h1{font-size:clamp(24px,calc(var(--portal-title-size) * .65),72px)}.custom-portal .story-center p{display:block;font-size:max(12px,var(--portal-body-size))}.custom-portal .login-form-wrap h2{font-size:clamp(24px,calc(var(--portal-welcome-size) * .85),64px)}.custom-portal .login-field input{font-size:max(16px,var(--portal-input-size))}.custom-portal .login-form-wrap{padding:32px 0}.custom-portal .botanical-window{max-width:350px;max-height:350px}.custom-portal.form-only .login-panel,.custom-portal.without-story .login-panel{min-height:100dvh}}
.owner-login-notice{border:1px solid #cddbc4;background:#edf3e7;padding:14px 16px;border-radius:9px;margin:-10px 0 24px;color:#35523b;font-size:12px;line-height:1.7}.owner-login-notice strong{display:block;font-size:13px;margin-bottom:6px}.owner-login-notice p{margin:6px 0}.owner-setup-link{display:block;margin:16px auto 0;text-decoration:underline;text-underline-offset:4px;font-size:12px;color:var(--portal-text-ink,#55704b)}

/* Per-element visual design, with independent responsive overrides. */
.custom-portal .login-story::before,.custom-portal .login-panel::before{content:'';position:absolute;inset:0;background-repeat:no-repeat;background-size:var(--portal-background-fit);background-position:var(--portal-background-x) var(--portal-background-y);pointer-events:none;z-index:0}.custom-portal .login-story::before{background-image:var(--portal-story-image);opacity:var(--portal-story-image-opacity)}.custom-portal .login-panel::before{background-image:var(--portal-page-image);opacity:var(--portal-page-image-opacity)}.custom-portal .login-panel>*{position:relative;z-index:1}.custom-portal .login-form-slot{z-index:2}.custom-portal span[data-portal-node]{display:block}.custom-portal [data-portal-node=buttonSymbol]{display:inline-block}
.custom-portal [data-portal-node]{--pn-x:var(--pn-x-d,0px);--pn-y:var(--pn-y-d,0px);--pn-width:var(--pn-width-d,initial);--pn-height:var(--pn-height-d,initial);--pn-fontSize:var(--pn-fontSize-d,initial);--pn-fontFamily:var(--pn-fontFamily-d,initial);--pn-fontWeight:var(--pn-fontWeight-d,initial);--pn-lineHeight:var(--pn-lineHeight-d,initial);--pn-letterSpacing:var(--pn-letterSpacing-d,initial);--pn-opacity:var(--pn-opacity-d,initial);--pn-radius:var(--pn-radius-d,initial);--pn-color:var(--pn-color-d,initial);--pn-background:var(--pn-background-d,initial);--pn-textAlign:var(--pn-textAlign-d,initial);--pn-hidden:var(--pn-hidden-d,initial);}
@media(min-width:701px) and (max-width:1000px){.custom-portal [data-portal-node]{--pn-x:var(--pn-x-t,0px);--pn-y:var(--pn-y-t,0px);--pn-width:var(--pn-width-t,initial);--pn-height:var(--pn-height-t,initial);--pn-fontSize:var(--pn-fontSize-t,initial);--pn-fontFamily:var(--pn-fontFamily-t,initial);--pn-fontWeight:var(--pn-fontWeight-t,initial);--pn-lineHeight:var(--pn-lineHeight-t,initial);--pn-letterSpacing:var(--pn-letterSpacing-t,initial);--pn-opacity:var(--pn-opacity-t,initial);--pn-radius:var(--pn-radius-t,initial);--pn-color:var(--pn-color-t,initial);--pn-background:var(--pn-background-t,initial);--pn-textAlign:var(--pn-textAlign-t,initial);--pn-hidden:var(--pn-hidden-t,initial);}}
@media(max-width:700px){.custom-portal [data-portal-node]{--pn-x:var(--pn-x-p,0px);--pn-y:var(--pn-y-p,0px);--pn-width:var(--pn-width-p,initial);--pn-height:var(--pn-height-p,initial);--pn-fontSize:var(--pn-fontSize-p,initial);--pn-fontFamily:var(--pn-fontFamily-p,initial);--pn-fontWeight:var(--pn-fontWeight-p,initial);--pn-lineHeight:var(--pn-lineHeight-p,initial);--pn-letterSpacing:var(--pn-letterSpacing-p,initial);--pn-opacity:var(--pn-opacity-p,initial);--pn-radius:var(--pn-radius-p,initial);--pn-color:var(--pn-color-p,initial);--pn-background:var(--pn-background-p,initial);--pn-textAlign:var(--pn-textAlign-p,initial);--pn-hidden:var(--pn-hidden-p,initial);}}
.custom-portal [data-portal-node]{translate:var(--pn-x,0px) var(--pn-y,0px)}
.custom-portal [data-portal-node][data-pn-width]{width:var(--pn-width,var(--pn-base-width,auto));max-width:none}
.custom-portal [data-portal-node][data-pn-height]{height:var(--pn-height,var(--pn-base-height,auto));min-height:0}
.custom-portal [data-portal-node][data-pn-fontsize]{font-size:var(--pn-fontSize,var(--pn-base-fontSize,inherit))}
.custom-portal [data-portal-node][data-pn-fontfamily]{font-family:var(--pn-fontFamily,var(--pn-base-fontFamily))}
.custom-portal [data-portal-node][data-pn-fontweight]{font-weight:var(--pn-fontWeight,400)}
.custom-portal [data-portal-node][data-pn-lineheight]{line-height:var(--pn-lineHeight,normal)}
.custom-portal [data-portal-node][data-pn-letterspacing]{letter-spacing:var(--pn-letterSpacing,normal)}
.custom-portal [data-portal-node][data-pn-opacity]{opacity:var(--pn-opacity,var(--pn-base-opacity,1))}
.custom-portal [data-portal-node][data-pn-radius]{border-radius:var(--pn-radius,var(--pn-base-radius,0px))}
.custom-portal [data-portal-node][data-pn-color]{color:var(--pn-color,var(--pn-base-color,inherit))}
.custom-portal [data-portal-node][data-pn-background]{background:var(--pn-background,var(--pn-base-background,transparent))}
.custom-portal [data-portal-node][data-pn-textalign]{text-align:var(--pn-textAlign,inherit)}
.custom-portal [data-portal-node][data-pn-hidden]{display:var(--pn-hidden,var(--pn-base-hidden,block))}
.custom-portal [data-portal-node][data-pn-fontsize] input{font-size:var(--pn-fontSize,var(--pn-base-fontSize,inherit))}.custom-portal [data-portal-node][data-pn-fontfamily] input{font-family:var(--pn-fontFamily,inherit)}
.portal-design-mode [data-portal-node]{cursor:move;user-select:none;touch-action:none}.portal-design-mode [data-portal-node]:hover{outline:1px dashed #6fa18d;outline-offset:3px}.portal-editor-selection{position:absolute;z-index:9999;outline:2px solid #469c78;pointer-events:none;box-shadow:0 0 0 3px #fff8}.portal-editor-selection .portal-resize-handle{position:absolute;width:14px;height:14px;background:#fff;border:2px solid #388b68;border-radius:4px;padding:0;pointer-events:auto;opacity:1;touch-action:none}.portal-resize-handle.nw{left:-7px;top:-7px;cursor:nwse-resize}.portal-resize-handle.ne{right:-7px;top:-7px;cursor:nesw-resize}.portal-resize-handle.sw{left:-7px;bottom:-7px;cursor:nesw-resize}.portal-resize-handle.se{right:-7px;bottom:-7px;cursor:nwse-resize}.portal-selection-label{position:absolute;left:0;top:-26px;font:11px Arial,sans-serif;background:#2d7659;color:white;padding:5px 9px;border-radius:5px;white-space:nowrap}

.custom-portal{--portal-node-title-size:var(--portal-title-size);--portal-node-welcome-size:var(--portal-welcome-size)}@media(max-width:700px){.custom-portal{--portal-node-title-size:clamp(24px,calc(var(--portal-title-size) * .65),72px);--portal-node-welcome-size:clamp(24px,calc(var(--portal-welcome-size) * .85),64px)}}
