/* CATNARA V33 public theme alignment.
 * Reuse published semantic colors. Never modify administrator UI,
 * auth controls, member data, or PC/PWA layout and event handling. */
html[data-view-mode="public"] body{
 --catnara-page-bg:var(--ui-bg,#f9f5f2);
 --catnara-page-surface:var(--ui-surface,#fff);
 --catnara-page-soft:var(--ui-soft,#f5e9e4);
 --catnara-page-line:var(--ui-line,#e8ded8);
 --catnara-page-text:var(--ui-text,#30282b);
 --catnara-page-muted:var(--ui-muted,#766d65);
 --catnara-page-accent:var(--ui-accent,#946f63);
}
/* Independent APP / Apple themes are not forced back to the PC palette. */
html[data-view-mode="public"][data-mobile-experience="app"] body{
 --catnara-page-bg:var(--catapp-native-bg,var(--ui-bg));
 --catnara-page-surface:var(--catapp-native-surface,var(--ui-surface));
 --catnara-page-soft:var(--catapp-native-soft,var(--ui-soft));
 --catnara-page-line:var(--catapp-native-line,var(--ui-line));
 --catnara-page-text:var(--catapp-native-text,var(--ui-text));
 --catnara-page-muted:var(--catapp-native-muted,var(--ui-muted));
 --catnara-page-accent:var(--catapp-native-primary,var(--ui-accent));
}
/* Stage 5 3D is a body-level portal: use the SAME live palette as
 * the adjacent MY/cat/crew cards; prior pink/ivory gradient was fixed. */
html[data-view-mode="public"] body .catnara-3d-inline-holder{
 background:radial-gradient(circle at 50% 32%,
  var(--catnara-page-surface) 0%,
  color-mix(in srgb,var(--catnara-page-surface) 62%,var(--catnara-page-soft)) 55%,
  color-mix(in srgb,var(--catnara-page-soft) 70%,var(--catnara-page-bg)) 100%);
 border:1px solid var(--catnara-page-line);
}
/* Main nyang-stage card and related crew surfaces share palette, rather
 * than drifting to an unrelated static salmon-colored theme. */
html[data-view-mode="public"] #app .nyanglife-page :is(
 .nyang-stage,.nyang-stage-card,.nyang-lobby-cat,.nyang-appearance-editor,
 .nyang-stats-card,.nyang-activity-card,.nyang-status-card
 ){
 background:var(--catnara-page-surface);
 border-color:var(--catnara-page-line);
 color:var(--catnara-page-text);
}
html[data-view-mode="public"] #app .nyanglife-page :is(
 .nyang-avatar-slot,.nyang-lobby-avatar
 ){
 background:color-mix(in srgb,var(--catnara-page-surface) 46%,var(--catnara-page-soft));
 border-color:var(--catnara-page-line);
}
/* Other public section cards with legacy fixed ivory/rose backgrounds.
 * Preserve layout and elevated/card styles while using current template. */
html[data-view-mode="public"] #app main :is(
 .crew-module-card,.crew-list-item,.crew-info-board-row,
 .my-data-card,.my-list-row,.booking-cat-summary,.reservation-reschedule-card
 ){
 background-color:var(--catnara-page-surface);
 border-color:var(--catnara-page-line);
 color:var(--catnara-page-text);
}
html[data-view-mode="public"] #app main :is(
 .crew-inline-error,.crew-sso-note,.booking-cat-choice
 ){
 border-color:var(--catnara-page-line);
 color:var(--catnara-page-text);
}
html[data-view-mode="public"] #app main :is(
 .crew-module-card,.crew-list-item,.my-data-card,.my-list-row
 ) :is(small,.meta,.muted){color:var(--catnara-page-muted)}
html[data-view-mode="public"] #app .nyanglife-page :is(button,select,summary):focus-visible{
 outline:2px solid var(--catnara-page-accent);outline-offset:2px;
}
