/* Owner-only visual layer. The two densities change spacing, never form logic.
   Imported in verified native frames; loaded last in the private cabinet shell. */
@font-face{font-family:CAUnifiedSans;src:url("../fonts/PTSans-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root[data-ca-density],:root.ca-native-embedded{
  --ca-ink:#202a2e;--ca-muted:#687277;--ca-line:#e0e4e6;--ca-page:#f5f6f7;--ca-soft:#f2f4f4;
  --ca-radius:12px;--ca-control-radius:10px;--ca-panel:20px;--ca-gap:16px;--ca-row-y:12px;--ca-row-x:18px;
  --ca-font:CAUnifiedSans,"PT Sans",Arial,sans-serif;
  color:var(--ca-ink);font-family:var(--ca-font);font-size:16px;
}
:root[data-ca-density="comfortable"]{--ca-panel:26px;--ca-gap:22px;--ca-row-y:18px;--ca-row-x:22px}
:root[data-ca-density] .clean-shell,:root[data-ca-density] :is(.ca-course,.ca-course-sidebar){
  --ink:var(--ca-ink);--muted:var(--ca-muted);--line:var(--ca-line);--page:var(--ca-page);--surface:#fff;--soft:var(--ca-soft);--accent:var(--ca-ink);
}
:root[data-ca-density] body,:root[data-ca-density] :is(.clean-shell,.ca-course,.ca-course-sidebar,.ca-native-shell){font-family:var(--ca-font);color:var(--ca-ink)}
:root[data-ca-density] :is(button,input,textarea,select){font-family:var(--ca-font)}
:root[data-ca-density] .clean-shell .workspace{padding-left:28px;padding-right:28px}
:root[data-ca-density] .compact-head{padding:20px 0 18px}
:root[data-ca-density] .compact-head h1{font-size:28px;line-height:1.25;letter-spacing:-.02em}
:root[data-ca-density] .clean-shell .nav-btn{font-size:16px;border-radius:var(--ca-control-radius);min-height:46px;padding:11px 14px}
:root[data-ca-density] .clean-shell :is(.button,.filter-btn,.chip,.chat-compose button){border-radius:var(--ca-control-radius);font-size:14px;font-weight:400;line-height:1.4;min-height:42px}
:root[data-ca-density] .clean-shell :is(input,select,textarea){border-radius:var(--ca-control-radius)}
:root[data-ca-density] .clean-shell .filter{border-radius:var(--ca-control-radius);font-size:14px;font-weight:400}
:root[data-ca-density] .clean-shell :is(.filter.active,.chat-list-item.active,.bubble.doctor,.lesson.active){background:var(--ca-soft);color:var(--ca-ink);border-color:var(--ca-line)}
:root[data-ca-density] .clean-shell :is(.chat-main,.chat-compose textarea){background:var(--ca-page)}
:root[data-ca-density] .clean-shell :is(.bubble,.bubble.doctor,.floating-chat){border-radius:var(--ca-radius)}
:root[data-ca-density] .clean-shell .bubble b{color:var(--ca-muted)}
:root[data-ca-density] .clean-shell :is(.card,.panel,.account-prepaid,.account-package-purchase,.ca-course-card,.ca-course-assignments,.ca-course-plan,.ca-course-lesson,.ca-native-frame){border-radius:var(--ca-radius);border-color:var(--ca-line);box-shadow:none}
:root[data-ca-density] .clean-shell :is(.badge,.badge.approved,.badge.draft,.badge.pending,.badge.revision,.beta,.ca-course-status,.ca-course-status.free,.ca-course-status.active,.ca-course-status.expired,.ca-course-completion){background:var(--ca-soft);color:var(--ca-muted);border-radius:6px;font-size:12px;line-height:1.4;padding:3px 7px}
:root[data-ca-density] .clean-shell :is(.ca-course-card-meta.expired,.ca-course-access-date.expired,.ca-course-owned a:hover){color:var(--ca-muted)}
:root[data-ca-density] .clean-shell :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--ca-ink);outline-offset:3px}
:root[data-ca-density] .account-order{grid-template-columns:44px minmax(0,1fr) auto;gap:14px;padding:var(--ca-row-y) var(--ca-row-x);align-items:center}
:root[data-ca-density] .clean-shell [data-account-results]{display:grid;gap:10px;padding:0;border:0;background:transparent;overflow:visible}
:root[data-ca-density] .clean-shell [data-account-results]>.account-order{border:1px solid #d6dde0;border-radius:var(--ca-radius);background:#fff}
:root[data-ca-density] .clean-shell [data-account-results]>a.account-order:hover{border-color:#9ca9af;background:#fafbfb}
:root[data-ca-density] .clean-shell [data-account-results]>a.account-order:focus-visible{outline:2px solid var(--ca-ink);outline-offset:2px}
:root[data-ca-density] .account-order h3{font-size:16px;line-height:1.35;margin:5px 0 7px;font-weight:400}
:root[data-ca-density] .account-order .toolbar{gap:6px 12px}
:root[data-ca-density] .account-order .toolbar>strong,:root[data-ca-density] .account-order-action>strong{font-size:16px;line-height:1.4}
:root[data-ca-density] .account-order .small{font-size:13px}
:root[data-ca-density] .account-order-action{align-self:center;gap:0}
:root[data-ca-density] :is(.account-order,.patient-toggle) .avatar{width:44px;height:44px;min-width:44px;border-radius:10px;flex-basis:44px;font-size:18px}
:root[data-ca-density] .patient-toggle{padding:var(--ca-row-y) var(--ca-row-x);gap:14px}
:root[data-ca-density] .patient-toggle strong{font-size:16px;line-height:1.4}
:root[data-ca-density] .patient-details{padding:0 var(--ca-row-x) var(--ca-panel)}
:root[data-ca-density] .patient-order{padding:14px 0}
:root[data-ca-density] .patient-setup{padding:10px 12px;background:var(--ca-soft);border-color:var(--ca-line);border-radius:var(--ca-control-radius)}
:root[data-ca-density] .ca-course-card-price{border-radius:var(--ca-control-radius)}
:root[data-ca-density] .ca-course-assignment{padding:13px 8px;border-radius:var(--ca-control-radius)}
:root[data-ca-density] .ca-course-assignment-topic{font-size:15px}
:root[data-ca-density] .ca-native-link{color:var(--ca-muted);font-size:13px}
:root[data-ca-density] .ca-native-footnote{color:var(--ca-muted);font-size:12px}
:root[data-ca-density] .account-live-dialog{border-radius:var(--ca-radius);border-color:var(--ca-line);padding:0}
:root[data-ca-density] .account-live-dialog[open]{display:flex;flex-direction:column}
:root[data-ca-density] .account-live-head{flex:0 0 auto;flex-wrap:wrap;gap:10px 16px;min-height:0;padding:16px 20px}
:root[data-ca-density] .account-live-head>div{flex:1 1 200px;min-width:0}
:root[data-ca-density] .account-live-head .button{border-radius:var(--ca-control-radius);font-size:14px;line-height:1.4;min-height:42px}
:root[data-ca-density] .account-live-dialog iframe{flex:1 1 auto;min-height:0;height:auto}
/* Native pages retain their fields, IDs, status values, validation and handlers.
   Extra root specificity wins over legacy template styles and the earlier layer. */
:root.ca-native-embedded[data-ca-density],:root.ca-native-embedded[data-ca-density] body{background:var(--ca-page)!important;color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density] :is(body,.cabinet-content,.modal-container,#setup-review-app,#mentorship-app),
:root.ca-native-embedded[data-ca-density] :is(.cabinet-content,.modal-container) :is(p,span,label,a,div,h1,h2,h3,h4,strong,small,button,input,textarea,select){
  font-family:var(--ca-font)!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content{font-size:16px!important;line-height:1.5!important;--c-dark:var(--ca-ink);--c-dark-gray:var(--ca-muted)}
:root.ca-native-embedded[data-ca-density] main.main--cabinet>section.cabinet{padding:var(--ca-panel)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-block,.cabinet-block__order,.model,.order-payment-summary,.ca-case-card,.ca-patient-empty,.ca-patient-orders,.cabinet-patient,.ca-patient-hero){
  border-color:var(--ca-line)!important;border-radius:var(--ca-radius)!important;box-shadow:none!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content>.cabinet-block,
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-block__order,.ca-case-card,.ca-patient-empty,.ca-patient-orders,.ca-patient-hero){
  padding:var(--ca-panel)!important;margin-top:var(--ca-gap);
}
:root.ca-native-embedded[data-ca-density] .cabinet-content>.cabinet-order-create,
:root.ca-native-embedded[data-ca-density] #homework-submit-block{margin-top:0!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-block__title,.cabinet-lession__title-h2,.cabinet-patient__title,.ca-patient-hero__title,h2,h3){font-size:20px!important;line-height:1.35!important;font-weight:700!important;color:var(--ca-ink)!important;letter-spacing:0!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.dropdown__title,.input__title,.cabinet-case-choice__title){font-size:14px!important;line-height:1.4!important;font-weight:400!important;color:var(--ca-muted)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content .cabinet-photos-photo__text{font-size:12px!important;line-height:1.4!important;color:var(--ca-muted)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.button,.header__button,button:not(.dropdown__header),input[type="submit"]){border-radius:var(--ca-control-radius)!important;font-size:14px!important;font-weight:400!important;line-height:1.4!important;min-height:42px}
:root.ca-native-embedded[data-ca-density] .cabinet-content :where(input:not([type="radio"]):not([type="checkbox"]):not([type="file"]):not([type="hidden"]),textarea,select,.input__value,.textarea,.dropdown__header,.dropdown__wrapper){
  box-sizing:border-box;max-width:100%;border-color:var(--ca-line)!important;border-radius:var(--ca-control-radius)!important;font-size:16px!important;line-height:1.5!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.input__value,textarea,select){background:#fff!important;color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-prepaid-modeling,.cabinet-case-choice){
  padding:16px!important;background:var(--ca-soft)!important;border:1px solid var(--ca-line)!important;border-radius:var(--ca-radius)!important;color:var(--ca-ink)!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content .cabinet-order-create--grouped .dropdown--service-group .dropdown__header_service{
  padding:14px 18px!important;border:1px solid var(--ca-line)!important;background:#fff!important;color:var(--ca-ink)!important;box-shadow:none!important;border-radius:var(--ca-control-radius)!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content .dropdown--service-group .dropdown__header_service .dropdown__title,
:root.ca-native-embedded[data-ca-density] .cabinet-content .dropdown--service-group .dropdown__header_service{font-size:18px!important;line-height:1.4!important;font-weight:700!important;color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-case-choice__option,.cabinet-case-choice__option.is-selected,.cabinet-case-choice__option:has(input:checked)){
  border-color:var(--ca-line)!important;border-radius:var(--ca-control-radius)!important;background:#fff!important;color:var(--ca-ink)!important;box-shadow:none!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-case-choice__option.is-selected,.cabinet-case-choice__option:has(input:checked)){border-color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(input[type="radio"],input[type="checkbox"]){accent-color:var(--ca-ink)}
/* Preserve native validation feedback after neutral controls, including direct
   error classes and ancestor .input/.cabinet-new-patients__input wrappers. */
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.error,.input.error .input__value,.cabinet-new-patients__input.error .input__value,[aria-invalid="true"]),
:root.ca-native-embedded[data-ca-density] .cabinet-content .cabinet-order-create--grouped .dropdown--service-group .dropdown__header_service.error{
  border-color:#b6474e!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.input.error .input__value,.input__value.error,.cabinet-new-patients__input.error .input__value,.dropdown__header_service.error,.dropdown__header_service.error .dropdown__title){
  color:#a0353c!important;
}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--ca-ink)!important;outline-offset:3px}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-patient-nav,.ca-patient-tabs){background:var(--ca-soft)!important;border-color:var(--ca-line)!important;border-radius:var(--ca-radius)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-patient-nav,.ca-patient-tabs){display:flex!important;flex:0 0 auto!important;align-self:flex-start!important;align-items:center!important;align-content:flex-start!important;flex-wrap:wrap!important;width:fit-content!important;max-width:100%;height:auto!important;min-height:0!important;gap:4px!important;padding:4px!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-patient-nav__button,.ca-patient-tabs__button){flex:0 0 auto!important;align-self:center!important;width:auto!important;max-width:100%;height:auto!important;min-height:42px!important;padding:9px 14px!important;font-weight:400!important;line-height:1.4!important;white-space:normal;box-shadow:none!important;text-decoration:none!important;opacity:1!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content .ca-patient-tabs__button.active{background:var(--ca-ink)!important;color:#fff!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-patient-nav__button,.ca-patient-tabs__button):not(.active){color:var(--ca-ink,#202a2e)!important}
:root.ca-native-embedded[data-ca-density] .cabinet-content .ca-patient-hero__avatar{background:var(--ca-muted)!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-content :is(.cabinet-lession__title-h2,.cabinet-lession__quote,.cabinet-lession__link,.cabinet-lession__input,.cabinet-lession__status){font-family:var(--ca-font)!important;letter-spacing:0!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-content>.cabinet-block{padding:var(--ca-panel)!important;min-height:0!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__col{gap:12px!important;min-width:0;max-width:100%}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__col+.cabinet-lession__col{margin-top:20px!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__row{gap:12px!important;margin-top:0!important;min-width:0;align-items:center}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-content .cabinet-lession__title-h2{font-size:18px!important;line-height:1.4!important;font-weight:700!important;margin:0!important;color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] :is(.cabinet-lession__quote,.cabinet-lession__link){font-size:16px!important;line-height:1.5!important;font-weight:400!important;margin:0!important;max-width:100%;overflow-wrap:anywhere;color:var(--ca-ink)!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__quote{padding:12px!important;border-color:var(--ca-line)!important;border-radius:var(--ca-control-radius)!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__quote--examination{padding:0!important;border:0!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__link svg{flex:0 0 22px;width:22px;height:22px}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__input{font-size:16px!important;line-height:1.5!important;font-weight:400!important;padding:12px!important;min-height:144px;border-radius:var(--ca-control-radius)!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__status{
  display:inline-block;align-self:flex-start;width:auto;max-width:100%;height:auto!important;min-height:0;padding:6px 10px!important;margin:0!important;border:1px solid var(--ca-line)!important;border-radius:6px!important;background:var(--ca-soft)!important;color:var(--ca-ink)!important;font-size:14px!important;font-weight:400!important;line-height:1.4!important;
}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__status.cabinet-lession__status--examination{background:#ffc67d!important;border-color:#ffc67d!important;color:#49300e!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__status.cabinet-lession__status--verified{background:#e4f2e8!important;border-color:#c8dfcf!important;color:#345c40!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .cabinet-lession__status.cabinet-lession__status--not-complete{background:#667378!important;border-color:#667378!important;color:#fff!important}
:root.ca-native-embedded[data-ca-density][data-ca-native-kind="assignment"] .course-drm-warning{padding:16px!important;margin-top:20px!important;font-size:13px!important;line-height:1.5!important;border-color:var(--ca-line)!important;border-radius:var(--ca-radius)!important;color:var(--ca-muted)!important;background:transparent!important}
:root.ca-native-embedded[data-ca-density] #setup-review-app .setup-review-app{--sr-ink:var(--ca-ink);--sr-muted:var(--ca-muted);--sr-border:var(--ca-line);--sr-surface:var(--ca-soft);--sr-accent:var(--ca-ink)}
:root.ca-native-embedded[data-ca-density] #mentorship-app{--mentorship-ink:var(--ca-ink);--mentorship-muted:var(--ca-muted);--mentorship-border:var(--ca-line);--mentorship-soft:var(--ca-soft);--mentorship-accent:var(--ca-ink);--mentorship-accent-dark:var(--ca-ink);--mentorship-warm:var(--ca-soft)}
:root.ca-native-embedded[data-ca-density] :is(.sr-card,.mentorship-card){border-radius:var(--ca-radius)!important;box-shadow:none!important}
:root.ca-native-embedded[data-ca-density] :is(.sr-button,.mentorship-button){border-radius:var(--ca-control-radius)!important;font-size:14px!important;font-weight:400!important;line-height:1.4!important}
:root.ca-native-embedded[data-ca-density] #setup-review-app .sr-balance>.sr-actions{display:flex;align-items:center;justify-content:flex-start;gap:10px}
:root.ca-native-embedded[data-ca-density] #setup-review-app .sr-balance>.sr-actions>button.sr-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;max-width:100%;white-space:normal}
:root.ca-native-embedded[data-ca-density] #setup-review-app .sr-balance>.sr-actions>button.sr-button>svg{display:block;flex:0 0 16px;width:16px;height:16px;color:inherit;stroke:currentColor}
:root.ca-native-embedded[data-ca-density] #setup-review-app .sr-balance>.sr-actions>button.sr-button--primary>svg,
:root.ca-native-embedded[data-ca-density] #setup-review-app .sr-balance>.sr-actions>button.sr-button--primary>svg>*{color:#fff!important;stroke:#fff!important}
@media(max-width:620px){
  :root[data-ca-density],:root[data-ca-density="comfortable"]{--ca-panel:16px;--ca-gap:14px;--ca-row-x:14px}
  :root[data-ca-density] .clean-shell .workspace{padding-left:12px;padding-right:12px}
  :root[data-ca-density] .compact-head h1{font-size:23px}
  :root[data-ca-density] .account-order{grid-template-columns:40px minmax(0,1fr);gap:10px 12px}
  :root[data-ca-density] .account-order-action{grid-column:2;justify-self:start}
  :root[data-ca-density] :is(.account-order,.patient-toggle) .avatar{width:40px;height:40px;min-width:40px;flex-basis:40px}
  :root.ca-native-embedded[data-ca-density] .cabinet-content :is(.cabinet-block__title,.cabinet-lession__title-h2,.cabinet-patient__title,.ca-patient-hero__title,h2,h3){font-size:18px!important}
  :root.ca-native-embedded[data-ca-density] .cabinet-content .dropdown--service-group .dropdown__header_service{padding:12px!important;font-size:16px!important}
}
