.pwa-install{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px;margin:0 0 20px;background:#e6f1ed;border:1px solid #bdd3ca;border-radius:16px;color:#17494e}.pwa-install p{margin:5px 0;line-height:1.5}.pwa-install button{min-height:46px}.pwa-install[hidden],.pwa-offline[hidden]{display:none!important}#pwa-install-help{flex-basis:100%}.pwa-offline{position:fixed;z-index:10000;left:12px;right:12px;bottom:env(safe-area-inset-bottom,0px);padding:14px;border-radius:12px;background:#fff1cf;color:#483507;box-shadow:0 2px 15px #0002}
@media(max-width:640px){html,body{max-width:100%;width:100%;margin:0}*,*::before,*::after{box-sizing:border-box}main,.portal,.client-portal,.advisor-portal{width:100%;max-width:100%;min-width:0;padding-left:12px;padding-right:12px}section,article,form,details,.client-chat-stream,.learning-card{min-width:0;max-width:100%}input,textarea,select{font-size:16px!important;max-width:100%;min-width:0}textarea{min-height:120px;scroll-margin-bottom:100px}button,.button-like,.portal-action-bar{min-height:44px;white-space:normal;overflow-wrap:anywhere}p,.note,.client-chat-stream{overflow-wrap:anywhere}img,svg,video,audio{max-width:100%}.pwa-install{padding:14px}.pwa-install button{width:100%}.top{flex-wrap:wrap;gap:10px}.pwa-keyboard-open .customer-chat-dock{position:static!important}body{padding-bottom:env(safe-area-inset-bottom,0px)}.client-drawer{max-width:calc(100vw - 16px)}table{display:block;max-width:100%;overflow-x:auto}}

/* Focused customer conversation after explicit consent. */
.simple-chat{max-width:820px!important;margin:0 auto!important;padding-top:16px!important}
.simple-chat>.notice,.simple-chat>.top,.simple-chat>p.success{display:none!important}
.simple-chat>section{padding:20px!important;margin-top:12px!important;border-radius:18px!important}
.simple-chat>section>h2{font-size:22px!important;margin:0 0 16px!important}
.simple-chat .client-menu-open{position:static!important;display:block;margin:0 0 8px auto!important;min-height:40px}
.simple-chat .learning-path{display:flex;flex-direction:column;gap:10px;border:0;background:transparent;padding:0!important;margin:18px 0 0;box-shadow:none}
.simple-chat .learning-path>h3,.simple-chat .path-progress,.simple-chat .path-answer-heading,.simple-chat .path-notice,.simple-chat .path-chat-archive{display:none!important}
.simple-chat .path-consent-settings{order:10;font-size:12px;margin-top:20px;opacity:.8}
.simple-chat .learning-path>h4,.simple-chat .path-feedback{padding:16px;border-radius:16px;background:#edf3f4;line-height:1.6;margin:4px 0;color:#17324a}
.simple-chat .chat-customer{align-self:flex-end;width:auto;max-width:92%;background:#e0f0e8!important;border:0!important;border-radius:16px 16px 4px 16px!important;padding:14px 18px!important;margin:4px 0!important}
.simple-chat .unified-customer-form{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;margin-top:10px}
.simple-chat .unified-customer-form textarea{height:120px!important;min-height:100px!important;max-height:40vh;resize:vertical;font-size:16px!important;padding:14px!important;border-radius:14px!important}
.simple-chat .customer-chat-dock>.dock-panel:first-child{display:none!important}
.simple-chat .customer-chat-dock{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;position:static!important}
.simple-chat .customer-chat-dock>.dock-panel{width:100%;margin:6px 0!important}
.simple-chat .learning-path>form{margin:4px 0}
.simple-chat .simple-chat-pause button{background:#edf3f4;color:#17324a;min-height:44px}
.simple-chat .topic-disclosure-content .development-link{display:none!important}
@media(max-width:640px){.simple-chat{padding:8px!important}.simple-chat>section{padding:14px!important;margin:0!important}.simple-chat>section>h2{font-size:20px!important}.simple-chat .learning-path>h4{font-size:18px!important}.simple-chat .customer-text-send-row button{width:100%}.simple-chat .customer-chat-actions{display:flex;flex-wrap:wrap;gap:8px}.simple-chat .customer-chat-actions button{flex:1 1 120px;min-height:46px}.simple-chat .path-consent-settings summary{white-space:normal}}

.thinking-hint{background:#fff3c4!important;border:1px solid #ddbd56!important;border-left:5px solid #c59922!important;color:#46390d!important;border-radius:14px;padding:18px!important;line-height:1.6}.thinking-hint *{color:inherit!important}.cc-person{border:1px solid #b8cec6;border-radius:14px;padding:16px;margin:14px 0}.cc-person label{display:block;margin:8px 0}.cc-person input[type=checkbox]{width:auto}.cc-person input:not([type=checkbox]),.cc-person textarea,.cc-person select{width:100%;box-sizing:border-box}.cc-source{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto}.cc-clients{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.cc-clients [aria-current=true]{outline:3px solid #277869}.cc-dashboard label{display:block;margin:10px 0}.cc-dashboard input{width:100%;box-sizing:border-box}.dictation-fallback{margin:8px 0;font-size:14px}
/* Update89: readable, responsive section forms; existing portal palette retained. */
.friendly-page{max-width:960px;margin-inline:auto}.friendly-intro{color:#526b66;max-width:70ch}.friendly-section{background:#fff;border:1px solid #d5e2dc;border-radius:14px;margin:14px 0;overflow:hidden}.friendly-section>summary{padding:19px 21px;display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;color:#203d38;min-height:64px}.friendly-section>summary::-webkit-details-marker{display:none}.friendly-section>summary:after{content:'+';font-size:24px;color:#196b5e}.friendly-section[open]>summary:after{content:'−'}.friendly-section>summary:hover{background:#edf5f0}.friendly-section>summary strong,.friendly-section>summary small{display:block}.friendly-section>summary small{font-size:14px;font-weight:400;color:#526b66;margin-top:5px}.friendly-content{padding:0 21px 21px}.friendly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.friendly-wide{grid-column:1/-1}.friendly-content input:not([type=checkbox]):not([type=radio]),.friendly-content select,.friendly-content textarea{width:100%;min-width:0;box-sizing:border-box;padding:12px;border:1px solid #bdcec6;border-radius:9px;background:#f9fbf9;color:#193832;font-size:16px;margin-top:7px}.friendly-content label{display:block}.friendly-content textarea{resize:vertical}.friendly-content form>button{margin-top:20px}.friendly-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.friendly-content button{min-height:44px;white-space:normal}.friendly-checks{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.friendly-checks label{padding:8px 12px;background:#edf5f0;border-radius:8px}.friendly-content input[type=checkbox],.friendly-content input[type=radio]{width:18px;height:18px;display:inline-block;margin:0 8px 0 0;vertical-align:middle}.friendly-hint{background:#fff3c4;border-left:4px solid #c99b1e;border-radius:9px;padding:14px;margin-bottom:16px;color:#493b16}.friendly-document{padding:15px 0;border-bottom:1px solid #d5e2dc}.friendly-document a{overflow-wrap:anywhere;display:block}.friendly-document small{display:block;color:#526b66;margin-top:5px}.friendly-content .cc-person{border-radius:10px}.friendly-section section{max-width:100%}.friendly-section form{max-width:100%}.friendly-content .cc-sources{white-space:pre-wrap;overflow-wrap:anywhere}.friendly-content .cc-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:640px){.friendly-grid,.friendly-content .cc-people-grid{grid-template-columns:1fr}.friendly-content{padding:0 14px 16px}.friendly-section>summary{padding:16px 14px}.friendly-actions button{flex:1 1 140px}.friendly-content form>button{width:100%}.friendly-section small{overflow-wrap:anywhere}}
@media(prefers-color-scheme:dark){.friendly-section{background:#20332d;border-color:#496055}.friendly-section>summary{color:#e6f2eb}.friendly-section>summary:hover,.friendly-checks label{background:#2b4438}.friendly-section>summary:after{color:#9cdec4}.friendly-intro,.friendly-section>summary small,.friendly-document small{color:#bcd1c5}.friendly-content input:not([type=checkbox]):not([type=radio]),.friendly-content select,.friendly-content textarea{background:#182b23;border-color:#536c5e;color:#eef5ef}.friendly-hint{background:#46390d;color:#fff0bb}.friendly-document{border-color:#496055}}
/* Consistent control spacing in the remaining portal sections. */
.portal form>label{margin-block:12px}.portal input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.portal select,.portal textarea{max-width:100%;box-sizing:border-box;font-size:16px}.portal button,.portal .portal-action-bar{min-height:44px}.portal .calendar{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.portal .calendar article{min-width:0}.portal .calendar button{margin:4px;min-width:60px}.friendly-content pre.cc-source{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:640px){.portal form{min-width:0}.portal .calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.portal .calendar button{display:block;width:100%;margin:6px 0}.portal .voice-buttons{flex-wrap:wrap}}
.friendly-source{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:8px 18px}.friendly-source dt{font-weight:600}.friendly-source dd{margin:0;overflow-wrap:anywhere}@media(max-width:640px){.friendly-source{grid-template-columns:1fr}.friendly-source dd{margin-bottom:12px}}

/* Update 90: role header */
.role-welcome{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.role-welcome form{margin:0}.role-welcome h2{margin:12px 0}.advisor-portal .customer-picker{width:100%;box-sizing:border-box}.advisor-portal .customer-picker summary{min-height:44px;padding:12px;cursor:pointer}.role-welcome button{min-height:44px}@media(max-width:640px){.role-welcome{display:block}.role-welcome form,.role-welcome button{width:100%}}
