/* Parla interface completion. Presentation only; IDs, DOM, hidden states and handlers stay intact. */
body:has(.auth-layout.v2-auth-expanded),body:has(.overlay:not(.hidden)),body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))){--text:#151722;--muted:#5d6474;--line:#dce2ee;--panel-solid:#fff;--bg:#fffdfa;color:#151722;background:#fffdfa}
:is(.auth-layout.v2-auth-expanded,.overlay,.privacy-notice),body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp{font-family:ParlaHomeInter,Inter,Arial,sans-serif!important;color:#151722}
/* Authentication: same quiet white / blue language as the conversation. */
body:has(.auth-layout.v2-auth-expanded) :is(.ambient-a,.ambient-b){opacity:0!important;pointer-events:none!important}
.auth-layout.v2-auth-expanded{min-height:0!important;padding:32px 0 48px!important}
.auth-layout.v2-auth-expanded .authcard{width:100%!important;max-width:430px!important;padding:24px 28px!important;background:#fff!important;border:1px solid #dce2ee!important;border-radius:26px!important;box-shadow:0 12px 40px #e8ecf4!important;color:#151722!important}
.auth-layout.v2-auth-expanded .authcard .auth-logo{width:48px;height:48px;background:linear-gradient(135deg,#6552ff,#3985f2 60%,#16bdc8)!important;color:#fff!important;border-radius:16px!important;font-weight:750!important;box-shadow:none!important}
.auth-layout.v2-auth-expanded :is(h2,#authTitle){font:750 28px/1.2 ParlaHomeInter,Inter,sans-serif!important;letter-spacing:-.8px;color:#151722!important;margin:18px 0 8px!important}
.auth-layout.v2-auth-expanded :is(.sub,.switch){font-size:14px!important;line-height:1.5!important;color:#5d6474!important}
.auth-layout.v2-auth-expanded .input-label{font-size:13px!important;font-weight:600!important;color:#343b50!important;margin-top:18px!important}
.auth-layout.v2-auth-expanded .field{height:52px!important;background:#fff!important;border:1px solid #ccd5e7!important;border-radius:14px!important;color:#151722!important;font:400 16px/1.4 ParlaHomeInter,Inter,sans-serif!important;box-shadow:none!important}
.auth-layout.v2-auth-expanded :is(.primary,.ghost-btn,.auth-link-btn,.auth-switch-link,.v2-auth-back){min-height:44px!important;font-family:ParlaHomeInter,Inter,sans-serif!important}
.auth-layout.v2-auth-expanded .primary{background:#4859f5!important;color:#fff!important;border:1px solid #4859f5!important;min-height:50px!important;border-radius:14px!important;box-shadow:none!important;font-weight:650!important;margin-top:16px!important}
.auth-layout.v2-auth-expanded :is(.auth-link-btn,.auth-switch-link,.v2-auth-back){color:#4653d9!important;font-size:13px!important}
.auth-layout.v2-auth-expanded .ghost-btn{border:1px solid #dce2ee!important;background:#f6f8ff!important;color:#3c497c!important;font-size:13px!important;border-radius:14px!important;padding:12px!important}
.auth-layout.v2-auth-expanded #authMsg:not(:empty){background:#fff3eb!important;color:#973c20!important;border:1px solid #f0c8b5!important;border-radius:12px;padding:12px!important;font-size:14px!important;line-height:1.5}
/* Shared modal foundations. Existing scroll, focus and dismissal logic retained. */
.overlay{background:#eaf0f8!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:20px!important}
.overlay :is(.modal,.ob-card){background:#fff!important;border:1px solid #dce2ee!important;border-radius:24px!important;box-shadow:0 14px 48px #dce4f0!important;color:#151722!important;max-height:calc(100dvh - 40px)!important;overflow-y:auto!important;overscroll-behavior:contain}
.overlay :is(h2,h3){color:#151722!important;font-family:ParlaHomeInter,Inter,sans-serif!important;font-weight:750!important;letter-spacing:-.65px!important;line-height:1.2!important}
.overlay h3{font-size:25px!important}
.overlay :is(.section-kicker,.premium-badge,.share-label){color:#5551d9!important;font:700 11px/1.5 ParlaHomeInter,Inter,sans-serif!important;letter-spacing:1.3px!important}
.overlay :is(.modal-subcopy,.flagnote,.camera-footnote,.premium-legal,.settings-head p,.settings-section-head p){color:#5d6474!important;font:400 13px/1.6 ParlaHomeInter,Inter,sans-serif!important}
.overlay :is(button,input,select,textarea){font-family:ParlaHomeInter,Inter,sans-serif!important}
.overlay :is(button,input,select){min-height:44px!important}
.overlay :is(input,select,textarea){font-size:16px!important;color:#151722!important;background-color:#fff!important;border:1px solid #ccd5e7!important;border-radius:12px!important;max-width:100%;min-width:0}
.overlay :is(.field,.sel){min-height:50px!important}
.overlay :is(.input-label,.rl){color:#343b50!important;font-size:13px!important;font-weight:600!important}
.overlay :is(.primary,.cta,.settings-plan-action){background:#4859f5!important;color:#fff!important;border:1px solid #4859f5!important;border-radius:13px!important;box-shadow:none!important;font-weight:650!important;line-height:1.4!important}
.overlay :is(.x,.icon-close,.premium-close-top,.ob-skip,.account-secondary-btn,.copy-invite,.camera-secondary,.history-refresh,.settings-mini-action){color:#4050c5!important;background:#f4f6ff!important;border:1px solid #dce2ee!important;border-radius:12px!important;box-shadow:none!important}
.overlay :is(.icon-close,.premium-close-top){min-width:44px!important;flex-shrink:0!important;font-size:24px!important}
.overlay :is(.x,.ob-skip){font-size:14px!important;line-height:1.5!important}
.overlay .modal-head-row{gap:16px!important}
.overlay .modal-head-row>div{min-width:0}
.overlay .modal-head-row .icon-close{align-self:flex-start!important}
.overlay .orline{color:#6c7382!important;font-size:12px!important;margin:18px 0!important}
.overlay .modal-icon{background:#eef2ff!important;color:#4859f5!important;border:0!important;box-shadow:none!important}
.overlay .room-code-input{letter-spacing:2px!important;font-weight:650!important}
.overlay :is(.roomcode-big,.tourcode-big){color:#3455ce!important;overflow-wrap:anywhere}
.overlay :is(.room-qr-shell,.room-security-note,.room-wait-status){background:#f1f8fa!important;border-color:#d3e9ec!important;color:#315b62!important}
.overlay .invite-copy-row{min-width:0!important}
.overlay .invite-link{font-size:13px!important}
/* Account: preserve established sections and sticky close / action-panel behavior. */
#accountModal .settings-head{background:#fff!important;border-bottom:1px solid #e3e8f1!important}
#accountModal .settings-identity{background:#eff3ff!important;border:1px solid #dbe4fa!important;border-radius:18px!important;box-shadow:none!important}
#accountModal .account-avatar{background:#4859f5!important;color:#fff!important;border-radius:15px!important;box-shadow:none!important}
#accountModal .account-identity{min-width:0!important}
#accountModal .account-identity b{color:#171b2b!important;overflow-wrap:anywhere!important}
#accountModal .account-identity span{color:#4654b8!important;font-weight:600!important}
#accountModal .account-stat{background:#f7f9fd!important;border:1px solid #e1e7f1!important;border-radius:14px!important;color:#171b2b!important;min-width:0!important}
#accountModal .account-stat span{color:#5d6474!important;font-size:12px!important}
#accountModal .account-stat b{color:#354ecb!important;font-size:18px!important;overflow-wrap:anywhere}
#accountModal :is(.settings-section,.settings-state-card){background:#fff!important;border:1px solid #dfe5ef!important;border-radius:16px!important;box-shadow:none!important}
#accountModal .account-section-title{color:#171b2b!important;font-weight:700!important;font-size:15px!important}
#accountModal :is(.account-pref-row,.subscription-state-row){color:#566074!important;border-color:#e6eaf2!important;gap:14px!important;font-size:13px!important}
#accountModal :is(.account-pref-row b,.subscription-state-row b){color:#252c40!important;overflow-wrap:anywhere!important}
#accountModal :is(.settings-row-button,.settings-action-row){background:#fff!important;border-color:#e6eaf2!important;color:#252c40!important;border-radius:8px!important;text-align:left!important;gap:14px!important;padding-block:14px!important}
#accountModal :is(.settings-row-button,.settings-action-row) strong{color:#252c40!important;font-weight:600!important;font-size:14px!important}
#accountModal :is(.settings-row-button,.settings-action-row) small{color:#606a7c!important;font-size:12px!important;line-height:1.5!important}
#accountModal #accountSpeak{background:#eef2ff!important;color:#4254d2!important;border:1px solid #dce3fa!important}
#accountModal .settings-inline-actions{gap:8px!important}
#accountModal .account-secondary-btn{font-size:12px!important;padding:10px!important;white-space:normal!important}
#accountModal .settings-link-row a{color:#4050c5!important;min-height:44px!important;font-size:13px!important}
#accountModal .account-action-panel{background:#f4f7ff!important;border-color:#cdd9f4!important;color:#252c40!important}
#accountModal .account-logout{color:#4050c5!important;background:#f4f6ff!important;border:1px solid #dce2ee!important;border-radius:12px!important;min-height:48px!important}
#accountModal .settings-danger-zone{background:#fff6f5!important;border:1px solid #f0d0cc!important;border-radius:16px!important}
#accountModal .settings-danger-zone :is(.account-section-title,p){color:#9b3b38!important}
#accountModal .danger-soft{color:#a42e2a!important;background:#fff!important;border:1px solid #e9b9b4!important;border-radius:12px!important}
/* Premium and camera keep their existing content, prices, controls and workflow. */
#paywall .premium-glow{display:none!important}
#paywall .premium-price-card{background:#eef3ff!important;border:1px solid #dbe3fa!important;border-radius:18px!important;box-shadow:none!important}
#paywall .price{color:#3049cf!important;font-weight:750!important;letter-spacing:-1px!important}
#paywall :is(.price small,.premium-price-card>span){color:#57627a!important}
#paywall .premium-feature-list li{background:#fff!important;border-color:#e3e8f2!important}
#paywall .premium-feature-list strong{color:#252c40!important}
#paywall .premium-feature-list small{color:#606a7c!important}
#paywall .premium-feature-list li>b{background:#eef2ff!important;color:#4859f5!important;border:0!important}
#paywall :is(.flagnote,.premium-entitlement-status){overflow-wrap:anywhere}
#cameraModal :is(.camera-stage,.camera-result-block){background:#f4f7fc!important;border-color:#dce2ee!important;border-radius:16px!important}
#cameraModal .camera-result-translation{background:#eef4ff!important;border-color:#d6e1f9!important}
#cameraModal .camera-result-text{color:#252c40!important;font-size:16px!important;line-height:1.55!important;overflow-wrap:anywhere}
#cameraModal .camera-result-label{color:#4f5ec3!important;font-weight:650!important}
#cameraModal .camera-status{background:#eef6f8!important;color:#315b62!important;border:1px solid #d5e9ed!important}
#historyModal .history-item{background:#fff!important;border:1px solid #dce2ee!important;border-radius:16px!important;color:#252c40!important}
.privacy-notice{background:#fff!important;color:#252c40!important;border:1px solid #dce2ee!important;border-radius:18px!important;box-shadow:0 8px 24px #dde4ef!important}
.privacy-notice .privacy-notice-copy span{color:#5d6474!important}
.privacy-notice .primary{background:#4859f5!important;color:#fff!important;border:0!important;min-height:44px!important}
/* Quick translation only: Room and Tour styling remain independent. */
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.workspace-head,.conversation-card,.settings-card,.feature-card){background:#fff!important;border:1px solid #dce2ee!important;box-shadow:none!important;border-radius:20px!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.conversation-head h2,.workspace-title h1){color:#151722!important;font-family:ParlaHomeInter,Inter,sans-serif!important;font-weight:750!important;letter-spacing:-.7px!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.sel,.input){background-color:#fff!important;border:1px solid #ccd5e7!important;border-radius:12px!important;color:#151722!important;font-size:16px!important;min-height:48px!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.msg,.help){background:#fff!important;border:1px solid #dfe5ef!important;border-radius:16px!important;box-shadow:none!important;color:#252c40!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp .msg .tgt{color:#171b2b!important;font-size:17px!important;line-height:1.5!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.mic-orb,.send.b){background:linear-gradient(135deg,#6651ff,#3188f2 60%,#13becb)!important;color:#fff!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp .mic-icon{display:block!important;width:30px!important;height:34px!important;font-size:0!important;background:#fff!important;-webkit-mask:url('../assets/brand/chat-microphone.svg') center/contain no-repeat!important;mask:url('../assets/brand/chat-microphone.svg') center/contain no-repeat!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.settings-title,.feature-copy b,.lbl){color:#252c40!important}
:is(.overlay,.auth-layout.v2-auth-expanded,.privacy-notice) :is(button,a,input,select,summary):focus-visible{outline:3px solid #008a99!important;outline-offset:3px!important}
:is(.overlay,.auth-layout.v2-auth-expanded) button:disabled{opacity:.5!important;cursor:not-allowed!important}
@media(max-width:650px){
 .overlay{padding:10px!important;align-items:center!important}
 .overlay :is(.modal,.ob-card){max-height:calc(100dvh - 20px)!important;border-radius:20px!important;max-width:100%!important}
 .overlay .modal:not(.settings-modal){padding:22px 18px!important}
 .auth-layout.v2-auth-expanded{padding:14px 0 28px!important}
 .auth-layout.v2-auth-expanded .authcard{padding:20px!important;border-radius:22px!important;box-shadow:none!important}
 .auth-layout.v2-auth-expanded :is(h2,#authTitle){font-size:26px!important}
 #accountModal .settings-identity{gap:10px!important}
 #accountModal .account-identity b{font-size:13px!important}
 #accountModal .settings-mini-action{font-size:12px!important;white-space:normal!important}
 #accountModal .settings-inline-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
 .overlay :is(.camera-actions,.invite-copy-row){gap:8px!important}
 .overlay .camera-actions button{font-size:12px!important;padding-inline:8px!important}
}
@media(prefers-reduced-motion:reduce){:is(.auth-layout.v2-auth-expanded,.overlay,.privacy-notice) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body:has(.auth-layout.v2-auth-expanded),body:has(.overlay:not(.hidden)),body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))){background:#fffdfa!important}
body:has(.auth-layout.v2-auth-expanded) .topbar{background:#fffdfa!important;border-color:#e2e6ef!important}
body:has(.auth-layout.v2-auth-expanded) :is(.v2-top-login,.ui-lang-select){background:#fff!important;border:1px solid #dce2ee!important;color:#343b50!important;min-height:44px!important}
#cameraModal :is(.camera-file-meta,.camera-target-wrap){background:#f7f9fd!important;border:1px solid #dce2ee!important}
#cameraModal :is(.camera-file-meta span,.camera-stage-empty b){color:#252c40!important}
#cameraModal :is(.camera-file-meta small,.camera-target-wrap>span,.camera-stage-empty small){color:#5d6474!important;font-size:12px!important;line-height:1.5!important}
#cameraModal .camera-stage-empty{background:#f4f7fc!important}
#cameraModal .camera-stage:has(.camera-stage-empty:not(.hidden)) .scanner-frame{visibility:hidden!important}
#cameraModal .camera-stage:has(.camera-stage-empty:not(.hidden)) #cameraPreview{visibility:hidden!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp :is(.tools button,.stylebar button,.conversation-tools button,.swap,.helpbtn){min-height:44px!important;color:#4050c5!important;font-size:13px!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp .stylebar button.on{background:#4859f5!important;color:#fff!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp .lang.a label{color:#4653c7!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp .lang.b label{color:#137985!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp #controls .mic{background:#fff!important;border-color:#dce2ee!important}
body:has(#screenApp:not(.hidden)):not(:has(:is(#roomBar,#tourBar):not(.hidden))) #screenApp #controls .mic.live .mic-orb{background:#cd3e60!important;box-shadow:0 0 0 4px #fde8ed!important}
#paywall .premium-badge{background:#eef2ff!important;border:1px solid #dbe3fa!important}
#paywall .premium-feature-list strong{font-size:13px!important;line-height:1.45!important}
#paywall .premium-feature-list small{font-size:12px!important;line-height:1.5!important}
#paywall #paySubscriptionStatus:empty{display:none!important}
#cameraModal .camera-modal-head{position:sticky!important;top:0!important;z-index:3!important;background:#fff!important;padding-bottom:12px!important}

/* Targeted readability fixes for light history and selected translation style. */
#historyModal .history-title{color:#171b2b!important;font-size:14px!important;line-height:1.45!important}
#historyModal :is(.history-meta,.history-langs){color:#526078!important;font-size:12px!important}
#historyModal .history-delete{color:#a12b28!important;background:#fff4f2!important;border-color:#e9b9b4!important}
#historyModal .history-item:hover{background:#f4f7ff!important;border-color:#a8b9e6!important}
#screenApp .stylechip .stylechip-copy b{color:#252c40!important;font-size:14px!important;line-height:1.4!important}
#screenApp .stylechip .stylechip-copy small{color:#5d6474!important;font-size:12px!important;line-height:1.5!important}
#screenApp .stylechip.on .stylechip-copy :is(b,small){color:#fff!important}
#screenApp .stylechip.on::after{background:#fff!important;color:#4050c5!important}
