/* OpenCommunity Neon v1.4.2 – fixes scoped to Neon, never edit beta.css.
   Preserves classic mode and actual server-side theme palette values. */
html.oc-theme-neon .admin-page .admin-tabs a{
  background:#24223c;color:#dcf9ff;border:1px solid #6e5c89;
  padding:9px 12px;line-height:1.3;border-radius:8px;
}
html.oc-theme-neon .admin-page .admin-tabs a:hover,
html.oc-theme-neon .admin-page .admin-tabs a:focus-visible{
  color:#fff;background:#45335b;border-color:#df80f1;text-decoration:none;
}
html.oc-theme-neon .admin-page .admin-section,
html.oc-theme-neon .admin-page .admin-member-row,
html.oc-theme-neon .admin-page .feature-table td,
html.oc-theme-neon .admin-page .feature-table th{color:#f3ecff}
html.oc-theme-neon .admin-page .feature-category td{
  background:#3b2b51;color:#fff;border-color:#745d85;
}
html.oc-theme-neon .admin-page .admin-members,
html.oc-theme-neon .admin-page .admin-member-row,
html.oc-theme-neon .admin-page .feature-table :is(th,td){border-color:#574866}
html.oc-theme-neon .admin-page .admin-member-row:nth-child(even){background:#252238}
html.oc-theme-neon .admin-page .color-grid label{
  color:#e9e1f4;border-bottom:1px solid #544360;min-width:0;
}
html.oc-theme-neon .admin-page .color-grid input[type="color"]{
  box-sizing:border-box;appearance:auto;-webkit-appearance:auto;
  display:inline-block;flex:0 0 68px;width:68px;height:37px;
  padding:3px;border:1px solid #9581aa;border-radius:7px;
  background:#2d2440;cursor:pointer;min-width:0;max-width:68px;
}
html.oc-theme-neon .admin-page .color-grid input[type="color"]::-webkit-color-swatch-wrapper{padding:0}
html.oc-theme-neon .admin-page .color-grid input[type="color"]::-webkit-color-swatch{border:1px solid #eee5ff;border-radius:4px}
html.oc-theme-neon .admin-page .color-grid input[type="color"]::-moz-color-swatch{border:1px solid #eee5ff;border-radius:4px}
html.oc-theme-neon .admin-page .theme-editor{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;
}
html.oc-theme-neon .admin-page .theme-controls,
html.oc-theme-neon .admin-page .theme-preview,
html.oc-theme-neon .admin-page .theme-editor>*{min-width:0;max-width:100%}
html.oc-theme-neon .admin-page .theme-preview{
  overflow-wrap:anywhere;overflow:hidden;
  color:var(--p-panel-text,#f5ecff);
}
html.oc-theme-neon .admin-page .theme-preview .preview-body,
html.oc-theme-neon .admin-page .theme-preview .preview-body :is(main,aside){min-width:0}
html.oc-theme-neon .admin-page .theme-preview .preview-head{
  color:var(--p-head-text,#fff);
}
html.oc-theme-neon .admin-page .theme-preview .preview-body :is(main,aside){
  color:var(--p-panel-text,#f5ecff);
}
html.oc-theme-neon .admin-page .theme-preview .preview-body p{color:inherit}
html.oc-theme-neon .admin-page .theme-preview .preview-body button{color:var(--p-button-text,#fff)}
html.oc-theme-neon .admin-page .oc-brand-display-field{grid-column:1/-1}
html.oc-theme-neon .admin-page .oc-brand-display-field small{font-weight:400;display:block;margin-top:6px}
html.oc-theme-neon .oc-brand-logo-image{display:block;width:auto;max-width:220px;height:58px;object-fit:contain;flex-shrink:0}
html.oc-theme-neon .oc-brand-wordmark{min-width:0;overflow-wrap:anywhere}
html.oc-theme-neon .oc-brand-wordmark .oc-brand-main{color:#f4e5ff}
html.oc-theme-neon .oc-brand-wordmark small{overflow-wrap:anywhere}
/* Cam request and wait surfaces were left white in the classic stylesheet. */
html.oc-theme-neon .cam-wait-card,
html.oc-theme-neon .cam-request-card{
  background:linear-gradient(155deg,#211931,#13182a);color:#f5edff;
  border:1px solid #8b599e;border-radius:16px;
  box-shadow:0 15px 40px #0008;
}
html.oc-theme-neon .cam-wait-card :is(h2,p,strong,b),
html.oc-theme-neon .cam-request-card :is(h3,p,strong,b){color:#f5edff}
html.oc-theme-neon .cam-wait-card .privacy-note,
html.oc-theme-neon .cam-request-card .privacy-note{color:#d6c9e5}
html.oc-theme-neon .cam-request-card .cam-request-error{
  background:#552638;color:#ffedef;border:1px solid #da8198;border-radius:8px;
}
/* Robust profile grid: avoid clipping and file-input intrinsic-width overflow. */
html.oc-theme-neon .member-page.profile-layout,
html.oc-theme-neon .member-page.profile-layout > *,
html.oc-theme-neon .profile-right,
html.oc-theme-neon .profile-right > *,
html.oc-theme-neon .profile-photo-box,
html.oc-theme-neon .profile-photo-upload,
html.oc-theme-neon .profile-photo-upload label{
  min-width:0;max-width:100%;box-sizing:border-box;
}
html.oc-theme-neon .profile-photo-upload input[type="file"]{
  display:block;width:100%;max-width:100%;min-width:0;
  padding:6px;overflow:hidden;box-sizing:border-box;
}
html.oc-theme-neon .profile-photo-box{overflow:hidden}
html.oc-theme-neon .profile-right{overflow:visible}
@media(max-width:1250px){
  html.oc-theme-neon .member-page.profile-layout{grid-template-columns:205px minmax(0,1fr)}
  html.oc-theme-neon .member-page.profile-layout .profile-right{
    grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
  }
  html.oc-theme-neon .member-page.profile-layout .profile-right > *{min-width:0}
}
@media(max-width:930px){
  html.oc-theme-neon .admin-page .theme-editor{grid-template-columns:minmax(0,1fr)}
  html.oc-theme-neon .admin-page .theme-preview{position:static}
}
@media(max-width:790px){
  html.oc-theme-neon .member-page.profile-layout{grid-template-columns:minmax(0,1fr)}
  html.oc-theme-neon .member-page.profile-layout .profile-right{
    grid-column:1;grid-template-columns:minmax(0,1fr);
  }
  html.oc-theme-neon .admin-page .color-grid{grid-template-columns:minmax(0,1fr)}
  html.oc-theme-neon .oc-app-brand{min-width:0}
  html.oc-theme-neon .oc-brand-logo-image{max-width:150px;height:48px}
}
