/* Application palettes stay separate from each organization's published website. */
.application-ui { background:var(--color-blush); color:var(--color-ink); }
.application-ui .button-primary,.application-ui .skip-link { background:var(--website-primary); color:var(--app-on-primary); box-shadow:none; }
.application-ui .button-primary:hover { background:var(--website-primary); outline:1px solid var(--color-rose); outline-offset:3px; }
.application-ui .button-pink { background:var(--color-pink); color:var(--app-on-accent); box-shadow:none; }
.application-ui .button-pink:hover { background:var(--color-pink); }
.application-ui .brand-mark { background:var(--website-primary); color:var(--app-on-primary); }
.application-ui :focus-visible { outline-color:var(--color-rose); }
.application-ui ::selection { background:var(--color-pink); color:var(--app-on-accent); }
.application-ui :is(.form-card,.panel,.stat-card,.access-card,.story-panel,.preview-window,.art-note,.organization-card,.website-editor-toolbar,.website-editor-tabs,.website-preview-panel,.empty-state,.event-card,.campaign-card,.fundraising-panel,.feature-card,.story-goal-note,.story-hero-portal,.story-support-note,.story-scattered-card,.story-portal-preview,.story-supporter,.story-preview-label,.story-reach-preview,.story-event-person,.scroll-portal-demo,.scroll-team-demo,.scroll-reach-demo) { background:var(--app-surface); }
.application-ui .badge-pink { background:var(--color-pink-light); color:var(--color-ink); }
.application-ui .badge-muted { background:var(--color-petal); }
.application-ui .field { background:var(--app-surface); color:var(--color-ink); border-color:var(--color-line); }
.application-ui .field::placeholder { color:var(--color-muted); }
.application-ui .public-nav[data-open] { background:var(--color-blush); border-color:var(--color-line); }
.application-ui :is(.preview-topbar,.story-window-bar,.cta-panel,.story-portal-actions > span:first-child,.story-network-tabs button[aria-selected=true]) { background:var(--website-primary); color:var(--app-on-primary); }
.application-ui :is(.preview-topbar,.story-window-bar,.cta-panel) :is(.text-white,.text-white\/70,.text-white\/80,.text-pink) { color:inherit; }
.application-ui .preview-topbar > span:first-child { color:inherit; }
.application-ui .admin-header { background:var(--app-surface); }
.area-context { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 24px; border-bottom:1px solid var(--color-line); }
.area-context-identity { display:flex; align-items:center; gap:12px; min-width:0; }
.access-mode-icon { display:flex; align-items:center; justify-content:center; width:40px; height:40px; flex-shrink:0; border-radius:12px; }
.access-mode-label { display:block; font-size:13px; line-height:1.5; }
.area-context p { margin:3px 0 0; font-size:12px; line-height:1.5; }
.area-context-switch { display:inline-flex; align-items:center; gap:8px; flex-shrink:0; font-size:12px; font-weight:600; padding:8px 0; text-decoration:underline; text-underline-offset:4px; }
.area-context[data-area-context=application] { background:#efeaf3; color:#302238; border-color:#d5cada; }
.area-context[data-area-context=application] .access-mode-icon { background:#302238; color:#fff; }
.area-context[data-area-context=organization] { background:#e6f2ef; color:#164e49; border-color:#c7dfd9; }
.area-context[data-area-context=organization] .access-mode-icon { background:#164e49; color:#fff; }
.area-context[data-area-context=user] { background:var(--color-petal); color:var(--color-ink); }
.area-context[data-area-context=user] .access-mode-icon { background:var(--website-primary); color:var(--app-on-primary); }
.area-context[data-area-context=account] { background:var(--app-surface); color:var(--color-ink); }
.area-context[data-area-context=account] .access-mode-icon { background:var(--color-petal); color:var(--color-ink); }
.application-ui[data-access-area=organization] .admin-sidebar { background:#164e49; color:#fff; overflow-y:auto; }
.application-ui[data-access-area=organization] .admin-sidebar .brand { color:#fff; width:100%; min-width:0; font-size:1rem; line-height:1.4; }
.application-ui[data-access-area=organization] .admin-sidebar .brand > span:last-child { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.application-ui[data-access-area=organization] .admin-sidebar .brand-logo { width:44px; height:44px; flex-shrink:0; object-fit:contain; border-radius:8px; }
.application-ui[data-access-area=organization] .admin-sidebar .brand-mark { background:#ffffff15; color:#d8eee8; }
.application-ui[data-access-area=organization] .sidebar-link.is-active { background:#ffffff18; color:#fff; }
.sidebar-area-name { display:block; font-size:11px; font-weight:600; letter-spacing:.08em; line-height:1.7; text-transform:uppercase; color:#d8eee8; }
.application-shell { min-height:100vh; }
.application-sidebar { display:flex; flex-direction:column; position:fixed; inset:0 auto 0 0; width:240px; overflow-y:auto; background:#302238; color:#fff; padding:24px; z-index:40; }
.application-sidebar .brand { color:#fff; }
.application-sidebar .brand-mark { background:#ffffff16; color:#eedce8; }
.application-sidebar-scope { margin:32px 0; padding:24px 0; border-block:1px solid #ffffff22; }
.application-sidebar-scope strong { display:block; font-size:14px; }
.application-sidebar-scope span { display:block; margin-top:8px; font-size:12px; color:#e0d7e8; }
.application-sidebar .sidebar-link.is-active { background:#ffffff16; color:#fff; }
.application-sidebar-account { margin-top:auto; padding-top:40px; }
.application-sidebar-account > p { overflow-wrap:anywhere; font-size:12px; line-height:1.6; }
.application-sidebar-account > span { display:block; color:#e0d7e8; font-size:11px; margin:4px 0 16px; }
.application-body { padding-left:240px; min-height:100vh; display:flex; flex-direction:column; }
.application-body main { flex:1; }
.application-mobile-header { display:none; }
.application-body .site-footer { background:var(--app-surface); }
.application-body .platform-section-navigation { display:none; }
.access-card[data-access-mode=organization] { border-top:4px solid #164e49; }
.access-card[data-access-mode=user] { border-top:4px solid var(--website-primary); }
.access-card[data-access-mode=team] { border-top:4px solid var(--color-pink); }
.access-card[data-access-mode=organization] .organization-monogram { background:#e6f2ef; color:#164e49; }
.access-card[data-access-mode=user] .organization-monogram { background:var(--color-petal); color:var(--color-rose); }
.access-card-logo { display:block; width:100%; height:100%; object-fit:contain; border-radius:inherit; }
.access-card .user-avatar--access { --avatar-size:44px; }
@media(min-width:640px) { .access-card .user-avatar--access { --avatar-size:60px; } }
@media(max-width:1023px) {
  .application-sidebar { display:none; }
  .application-sidebar[data-open] { display:flex; top:64px; width:min(320px,90vw); }
  .application-body { padding-left:0; }
  .application-mobile-header { display:flex; align-items:center; justify-content:space-between; min-height:64px; padding:12px 20px; background:#302238; color:#fff; }
  .application-mobile-header .icon-button { border-color:#ffffff44; color:#fff; }
  .application-mobile-header .icon-button:hover { background:#ffffff16; }
  .application-mobile-header strong { font-size:14px; }
  .area-context { padding:14px 20px; }
}
@media(max-width:479px) {
  .area-context { align-items:flex-start; flex-wrap:wrap; gap:8px 12px; }
  .area-context-switch { margin-left:52px; }
  .area-context p { font-size:11px; }
}
