:root{--webai-purple:#6042ed;--webai-ink:#232c40;--webai-muted:#596983;--webai-border:#dce2ef;--webai-surface:#fff;--webai-radius:16px;--webai-control-radius:9px;--webai-control-border:#687d82}
.webai-panel{background:white;border:1px solid var(--webai-border);border-radius:16px;min-width:0;width:100%;margin:.6rem 0;color:var(--webai-ink)}
.webai-panel>summary{padding:1rem 1.25rem;font-weight:650;font-size:1.05rem;cursor:pointer;overflow-wrap:anywhere}
.webai-panel[open]>summary{border-bottom:1px solid var(--webai-border);background:#f6f3ff;border-radius:16px 16px 0 0}
.webai-panel-body{padding:1.25rem;min-width:0;overflow-wrap:anywhere}.webai-panel-body>*{max-width:100%}
.webai-panel.webai-hero,.webai-panel.webai-guidance{padding:0!important;height:auto}
.webai-action{position:relative;display:inline-block;vertical-align:middle;max-width:100%;margin:.25rem .25rem .25rem 0}
.webai-action-wide{display:block;width:100%}.webai-action .mud-button-root{min-height:40px;border-radius:9px;text-transform:none;font-weight:600;white-space:normal;overflow-wrap:anywhere;max-width:100%}
input[type=file]::file-selector-button{padding:.6rem .9rem;color:#6042ed;border:1px solid #6042ed;border-radius:9px;background:white;font:inherit;font-weight:600;cursor:pointer}
.webai-action .mud-button-root:disabled{color:#566174;background:#edf0f5;border:1px dashed #8a94a6;opacity:1;cursor:not-allowed}
.webai-action-help{display:none;position:absolute;bottom:100%;left:0;z-index:1500;width:260px;max-width:calc(100vw - 3rem);padding:.65rem .8rem;background:#232c40;color:white;border-radius:8px;font-size:.85rem;line-height:1.5;box-shadow:0 2px 8px #0003;overflow-wrap:anywhere;pointer-events:auto}
.webai-action-help strong{display:block;font-weight:650}.webai-action:hover>.webai-action-help,.webai-field[data-help-open="true"]>.webai-action-help{display:block}
.webai-field[data-help-dismissed="true"]>.webai-action-help{display:none!important}
.webai-help-dismissed>.webai-action-help{display:none!important}.webai-action:focus-visible{outline:3px solid #5337d9;outline-offset:3px;border-radius:9px}
.webai-header form{flex-shrink:0}.webai-header .webai-action-help{left:auto;right:0;bottom:auto;top:100%}
@media(max-width:600px){.webai-action>.webai-action-help,.webai-header .webai-action>.webai-action-help{position:fixed;left:1rem;right:1rem;bottom:1rem;top:auto;width:auto;max-width:none}.webai-header .webai-action{margin:0}.webai-header .mud-toolbar>.mud-typography:not(.webai-brand):not(.webai-context){max-width:24vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:600px){.webai-panel-body{padding:.9rem}.webai-panel>summary{padding:.9rem}.webai-action{max-width:100%}.webai-action-help{width:min(260px,70vw)}.webai-panel input,.webai-panel textarea{min-width:0;max-width:100%}.webai-header .mud-toolbar{gap:.25rem}.webai-header .mud-typography{font-size:.9rem;overflow-wrap:anywhere}.webai-header .webai-brand{font-size:1.15rem!important}}
#components-reconnect-modal{display:none;position:fixed;bottom:1rem;right:1rem;left:1rem;max-width:44rem;margin:auto;padding:1rem;background:#fff5dc;color:#232c40;border:2px solid #805d14;border-radius:12px;z-index:2000;box-shadow:0 3px 16px #0003}
#components-reconnect-modal.components-reconnect-show,#components-reconnect-modal.components-reconnect-retrying,#components-reconnect-modal.components-reconnect-failed,#components-reconnect-modal.components-reconnect-rejected{display:block}
#components-reconnect-modal p{margin:.5rem 0}#workspace-reload{padding:.6rem 1rem;border:1px solid currentColor;border-radius:6px;background:white;color:#232c40;font:inherit;cursor:pointer}
.webai-files-fields{border:0;margin:0;padding:0;min-width:0}.webai-files-fields label{display:block;margin:.75rem 0}.webai-files-fields select{display:block;width:100%;padding:.75rem;border:1px solid var(--webai-border);border-radius:9px;background:white;color:var(--webai-ink);font:inherit}.webai-record{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--webai-ink);background:#f6f7fc}
.webai-shell .mud-typography{font-family:inherit}
.webai-header{border-top:4px solid transparent;border-image:linear-gradient(90deg,#6042ed,#278ccc) 1;border-bottom:1px solid var(--webai-border)}
.webai-brand{font-weight:750!important;font-size:1.55rem!important;letter-spacing:-.035em}
.webai-context{margin-left:1.5rem;color:var(--webai-muted);font-size:.9rem}
.webai-drawer{border-right:1px solid #e2def3}
.webai-field{display:block;position:relative;width:100%;margin-block:.5rem;padding-inline-end:2rem}
.webai-field-help-button{position:absolute;inset-inline-end:0;top:.6rem;border:1px solid #6042ed;border-radius:50%;background:white;color:#5337d9;width:1.6rem;height:1.6rem;cursor:pointer}
.webai-field-help-button:focus-visible{outline:3px solid #278ccc;outline-offset:2px}
[dir=rtl] .webai-panel>summary{text-align:right}
@media(max-width:600px){.webai-shell .mud-main-content{margin-inline:0!important;padding-inline:0!important}.webai-drawer{max-width:85vw}}
.webai-drawer .mud-drawer-content{overflow-y:auto}
.webai-secondary-panel>summary{cursor:pointer;font-size:1.15rem;font-weight:650;padding:.5rem 0}
.webai-secondary-panel>p{color:var(--webai-muted);margin:.75rem 0}
.webai-content button:disabled{opacity:.65;cursor:not-allowed;border-style:dashed}
summary:focus-visible{outline:3px solid #5337d9;outline-offset:3px}
.webai-nav-label{padding:2rem 1.5rem 1rem;font-size:.75rem!important;font-weight:750!important;letter-spacing:.13em;color:var(--webai-muted)}
.webai-drawer .mud-navmenu{padding:0 .75rem}
.webai-drawer .mud-nav-link{border-radius:9px;margin:4px 0;min-height:46px}
.webai-drawer .mud-nav-link.active{background:#ded6fc!important;color:#5337d9!important;font-weight:700;border-left:4px solid #6042ed}
.webai-nav-note{padding:1.5rem;margin-top:2rem;font-size:.8rem;line-height:1.6;color:var(--webai-muted)}
.webai-nav-note strong{color:#5337d9}.webai-nav-note p{margin:.35rem 0}
.webai-content{padding:2.25rem!important;min-height:calc(100vh - 115px)}
.webai-content h1{font-size:clamp(1.9rem,3.2vw,2.65rem)!important;font-weight:730;line-height:1.2;letter-spacing:-.025em}
.webai-content .mud-paper-outlined{border-color:var(--webai-border);border-radius:16px}
.webai-content .mud-button-root{border-radius:9px;text-transform:none;font-weight:600}
.webai-content .mud-input-control{margin-top:.75rem}
.webai-hero{padding:2.25rem!important}.webai-kicker{color:#6042ed;font-size:.75rem;font-weight:750;letter-spacing:.12em;margin-bottom:1rem}
.webai-intro{color:var(--webai-muted);font-size:1.05rem;line-height:1.7;max-width:48rem;margin:1rem 0 1.5rem}
.webai-guidance{height:100%;padding:1.5rem!important}.webai-guidance p{color:var(--webai-muted);line-height:1.7;margin-top:.75rem}
.webai-footer{padding:.65rem 1.5rem;background:#e5f3f0;color:#52647a;font-size:.8rem}
.webai-library-list .mud-button-root{justify-content:flex-start;text-align:left;overflow-wrap:anywhere}
/* Account tasks use one always-visible heading and the shared form rules. */
.webai-account-card{width:100%;max-width:30rem;margin:1rem auto 2rem;background:var(--webai-surface);border:1px solid var(--webai-border);border-radius:var(--webai-radius);padding:clamp(1.25rem,3vw,2rem);box-sizing:border-box}
.webai-account-heading{margin-block-end:1rem}
.webai-account-heading h1{font-size:clamp(1.65rem,3vw,2rem)!important;margin:0!important}
.webai-account-body{display:grid;gap:1rem;min-width:0}
.webai-account-body p{margin:0;line-height:1.6}
.webai-account-links{padding-block-start:.25rem}
.webai-form{display:flex;flex-direction:column;gap:1rem;min-width:0}
.webai-form>.webai-field{margin:0}
.webai-field>label{display:block;font-weight:600;margin-block-end:.4rem}
.webai-field>input:not([type=checkbox]):not([type=radio]):not([type=file]),
.webai-field>textarea,
.webai-content select:not(.mud-select-input){
 display:block;width:100%;max-width:100%;box-sizing:border-box;min-height:2.75rem;
 padding:.65rem .75rem;border:1px solid var(--webai-control-border);border-radius:var(--webai-control-radius);
 background:var(--webai-surface);color:var(--webai-ink);font:inherit;line-height:1.5
}
.webai-content label:has(>select){display:block;margin-block:.75rem;font-weight:600}
.webai-content label>select{margin-block-start:.4rem}
.webai-content select:disabled,.webai-field>input:disabled{background:#edf0f5;color:var(--webai-muted)}
.webai-content h1{margin-block-end:1rem}
.webai-content p{line-height:1.6}
.webai-form>.webai-action{align-self:flex-start}
.webai-form>.webai-action-wide{align-self:stretch;margin-inline:0}
@media(max-width:600px){.webai-account-card{margin-block:.5rem 1rem}.webai-account-card .webai-field{padding-inline-end:2rem}}
@media print{.webai-content{padding:0!important;min-height:0}}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #5337d9;outline-offset:3px}
/* Route headings receive programmatic focus for screen-reader orientation,
   but are not interactive controls and should not display a focus box. */
.webai-content h1[tabindex="-1"]:focus{outline:none}
@media(max-width:600px){.webai-content{padding:1rem!important}.webai-hero{padding:1.25rem!important}.webai-context{display:none}.webai-header .mud-typography{overflow-wrap:anywhere}.webai-content .mud-grid-item{min-width:0}}

/* Hosting introduction: bounded imagery and encoded Markdown within the shell. */
.webai-hosting { margin-block-end: 1.5rem; overflow-wrap: anywhere; }
.webai-hosting img { display: block; max-inline-size: 100%; max-block-size: 160px; inline-size: auto; block-size: auto; object-fit: contain; margin-block-end: 1rem; }
.webai-hosting pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.webai-hosting-editor input:not([type]), .webai-hosting-editor textarea { display: block; inline-size: 100%; max-inline-size: 100%; box-sizing: border-box; border: 1px solid #dce2ef; border-radius: 9px; padding: .75rem; font: inherit; color: inherit; background: white; min-block-size: 2.75rem; }
.webai-hosting-editor input[type=file] { max-inline-size: 100%; }
.webai-hosting-editor label { display: block; margin-block-end: .35rem; }
/* Keep navigation and product identity intact while the account name truncates. */
@media(max-width:600px){.webai-header .webai-action,.webai-header .webai-brand{flex-shrink:0;white-space:nowrap}.webai-header .mud-toolbar>.mud-typography:not(.webai-brand):not(.webai-context){min-inline-size:0}}
