.legal-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 28px;border-top:1px solid var(--line,#e7e3ec);padding:20px clamp(20px,3vw,36px);font-size:.82rem;line-height:1.5}.legal-footer small{font-size:inherit;color:var(--muted,#635e73)}.legal-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 8px}.legal-footer a{display:inline-flex;align-items:center;min-height:34px;padding:5px 8px;border-radius:8px;color:var(--muted,#635e73);text-decoration:none;transition:color .16s ease,background-color .16s ease,transform .16s ease}.legal-footer a:hover{color:var(--brand,#6554c0);background:color-mix(in srgb,var(--brand,#6554c0) 9%,transparent);transform:translateY(-1px)}.legal-footer a:focus-visible{outline:3px solid var(--brand,#6554c0);outline-offset:1px}.nav-icon{width:22px;height:22px;flex:none}.sidebar nav a{display:flex;align-items:center;gap:12px;position:relative}.sidebar-toggle{display:none}.brand-symbol{display:none}.legal-page{max-width:76ch;margin:0 auto;padding:40px 24px}.legal-page h1{margin:24px 0}.legal-page h2{margin:24px 0 8px}.legal-page p{margin:12px 0}.legal-page li{margin:8px 0}.legal-page table{width:100%;border-collapse:collapse}.legal-page td,.legal-page th{padding:8px;text-align:left;border:1px solid var(--line);overflow-wrap:anywhere}.legal-page a{overflow-wrap:anywhere}
@media(min-width:1000px){.sidebar-toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--brand);padding:8px}.shell.is-compact{grid-template-columns:72px minmax(0,1fr)}.shell.is-compact .sidebar{padding:24px 10px;gap:20px}.shell.is-compact .workspace{max-width:none}.is-compact .brand-full,.is-compact .sidebar>.eyebrow,.is-compact .account-label,.is-compact .toggle-label{display:none}.is-compact .brand-symbol{display:block;width:44px;margin:auto}.is-compact .sidebar nav a{justify-content:center;padding:12px}.is-compact .nav-label{position:absolute;left:100%;top:50%;transform:translateY(-50%);z-index:30;white-space:nowrap;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);visibility:hidden}.is-compact .sidebar nav a:hover .nav-label,.is-compact .sidebar nav a:focus-visible .nav-label{visibility:visible}.is-compact .account-menu{position:relative}.is-compact .account-options{position:absolute;left:100%;bottom:0;z-index:30;min-width:160px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px}.is-compact .account-menu summary{justify-content:center}}
@media(max-width:600px){.legal-footer{justify-content:center;text-align:center;padding:16px}.legal-footer nav{gap:4px 14px}.legal-footer a{min-height:44px}.legal-page{padding:24px 16px}}

@media(max-width:700px){.sidebar nav .nav-icon{display:none}.sidebar nav a{display:block}}

.context-help{margin:0 0 20px;border-bottom:1px solid var(--line);padding-bottom:8px;color:var(--muted);font-size:.85rem}.context-help summary{font-weight:500}.context-help p{margin:8px 0;max-width:70ch}.context-help a{display:inline-flex;align-items:center;min-height:44px;padding:4px 0}.context-help-links{display:flex;flex-wrap:wrap;gap:4px 20px}.help-index{display:flex;flex-wrap:wrap;gap:6px 18px;margin:20px 0}.help-index a,.help-back{display:inline-flex;align-items:center;min-height:36px}.help-topic{scroll-margin-top:24px;border-top:1px solid var(--line);padding:8px 0 20px}.help-back{font-size:.85rem}.footer-credit{max-width:320px;text-align:right}.legal-footer nav{flex:1}.legal-footer .footer-credit{flex:none}@media(max-width:700px){.legal-footer .footer-credit{max-width:none;text-align:center}.legal-footer{justify-content:center}.legal-footer nav{flex-basis:100%}}

.help-welcome,.first-course-mascot{display:flex;align-items:center;gap:20px;padding:16px;background:#fff;border-radius:12px;margin:16px 0}.help-welcome img,.first-course-mascot img{width:160px;height:120px;flex:none}.help-welcome>div{min-width:0}@media(max-width:600px){.help-welcome,.first-course-mascot{flex-direction:column;align-items:flex-start;gap:8px}.help-welcome img,.first-course-mascot img{align-self:center}}

/* Private workspace: navigation stays visible; content and footer share one scroll area. */
.legal-footer{background:var(--lavender)}.legal-footer .footer-credit{font-size:.72rem;color:var(--muted);max-width:270px}.legal-footer .footer-credit a{display:inline;min-height:0;padding:2px 3px;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,currentColor 55%,transparent)}.legal-footer .footer-credit a:hover{text-decoration-thickness:2px;text-decoration-color:currentColor}
.private-app{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.private-app .environment{flex:none}.private-app .shell{flex:1;min-height:0;grid-template-columns:244px minmax(0,1fr)}.private-app .content-pane{min-width:0;overflow:auto;display:flex;flex-direction:column;scroll-padding:20px}.private-app .workspace{flex:1}.private-app .content-pane>.legal-footer{flex:none}.private-app .sidebar{min-height:0;position:relative;gap:20px;padding:24px 16px}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.sidebar-heading .eyebrow{font-size:.65rem}.sidebar-links{min-height:0;flex:1;display:flex;flex-direction:column;gap:24px}.private-app .account-menu{margin-top:auto;flex:none}.private-app .account-options{position:absolute;bottom:100%;left:0;z-index:40;min-width:160px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.private-app .account-menu{position:relative}.mobile-menu-toggle{display:none}.private-app .sidebar-toggle{padding:4px;width:36px;min-height:36px;flex:none}.private-app .is-compact{grid-template-columns:72px minmax(0,1fr)}.is-compact .sidebar-heading>.eyebrow{display:none}.is-compact .sidebar-heading{justify-content:center}.private-app .is-compact .account-options{left:100%;bottom:0}
.profile-data .profile-field{position:relative;padding:16px 0;border-bottom:1px solid var(--line)}.profile-field>div:first-child{padding-right:48px;overflow-wrap:anywhere}.profile-data .field-label{font-size:.85rem;font-weight:600}.profile-field p{color:var(--ink)}.profile-editor>summary{position:absolute;right:0;top:12px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;border:1px solid var(--line);border-radius:8px;color:var(--brand);list-style:none}.profile-editor>summary::-webkit-details-marker{display:none}.profile-editor form{max-width:560px;padding:20px;margin-top:16px;background:var(--bg);border-radius:12px}.profile-data .content-facts{margin-top:20px}.google-managed{padding:12px 0}.profile-editor .stack>button{align-self:flex-start}
@media(min-width:1000px) and (max-height:650px){.sidebar-links{overflow:auto}.private-app .sidebar{gap:10px;padding-top:12px;padding-bottom:12px}.sidebar-links nav a{padding:8px}}
@media(max-width:999px){.private-app .shell,.private-app .shell.is-compact{display:flex;flex-direction:column;min-height:0}.private-app .sidebar{padding:8px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border-right:0;border-bottom:1px solid var(--line);flex:none}.private-app .brand{max-width:160px}.private-app .sidebar-heading .eyebrow{display:none}.mobile-menu-toggle{display:block;width:40px;min-height:40px;border:1px solid var(--line);background:var(--surface);border-radius:8px;color:var(--brand)}.private-app .sidebar-links{display:none}.private-app .shell.mobile-open .sidebar-links{display:flex;grid-column:1/-1;grid-row:2;max-height:45dvh;overflow:auto;gap:8px}.private-app .sidebar nav{flex-direction:column}.private-app .sidebar nav a{display:flex;text-align:left;align-items:center;gap:10px}.private-app .sidebar nav .nav-icon{display:block}.private-app .account-menu{margin:0;padding:0;border:0;grid-column:3;grid-row:1}.private-app .account-label{display:none}.private-app .account-menu summary{padding:0;min-height:40px}.private-app .account-options{left:auto;right:0;top:100%;bottom:auto}.private-app .content-pane{flex:1;min-height:0;width:100%}.private-app .workspace{padding:24px 16px}.private-app .sidebar-toggle{display:none}.private-app .brand-symbol{display:none}.private-app .brand-full{display:block}.private-app .nav-label{position:static;visibility:visible;transform:none;padding:0;border:0;background:transparent;white-space:normal}}

/* Public/footer layout: bottom on short pages, after content on long pages. */
.public-page{min-height:100dvh;display:flex;flex-direction:column}.public-page>main{flex:1}.legal-footer{flex:none;background:var(--lavender)}
.public-info-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100dvh}.public-info-page>.environment+.public-info-shell{min-height:calc(100dvh - 34px)}.public-info-shell>.content-pane{min-width:0;display:flex;flex-direction:column}.public-info-shell .legal-page{flex:1;width:100%}.public-info-sidebar{background:var(--surface,#fff);border-right:1px solid var(--line,#e7e3ec);padding:34px 20px;display:flex;flex-direction:column;gap:28px}.public-info-sidebar nav a{display:block;padding:12px 16px;border-radius:10px;color:var(--muted,#635e73);text-decoration:none;font-weight:600}.public-info-sidebar nav a:hover{background:var(--bg,#fbf9f5)}
@media(max-width:999px){.public-info-shell{display:block;min-height:100dvh}.public-info-page>.environment+.public-info-shell{min-height:calc(100dvh - 34px)}.public-info-sidebar{border-right:0;border-bottom:1px solid var(--line,#e7e3ec);padding:16px;gap:8px}.public-info-sidebar .brand{max-width:180px}.public-info-sidebar nav a{padding:8px 0}.public-info-shell>.content-pane{min-height:calc(100dvh - 101px)}.public-info-page>.environment+.public-info-shell>.content-pane{min-height:calc(100dvh - 135px)}}

.contact-form{max-width:720px;margin-top:28px}.contact-form textarea{resize:vertical;min-height:150px}.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-form>.button{justify-self:start}.contact-page .notice{padding:12px 16px;border-radius:10px;background:var(--lavender);font-weight:600}

/* Fill the available content pane with either sidebar width. */
.private-app .workspace{max-width:none}
