/* NOFIRA palettes: coordinated surfaces and foregrounds, selected in Aspetto → Colori NOFIRA. */
html[data-nofira-theme="light"][data-nofira-palette-light="a"]{
 --nf-page:#F4F7FA;--nf-surface:#FFFFFF;--nf-ink:#17283B;--nf-secondary:#526579;--nf-action:#285987;--nf-link:#285987;--nf-border:#CBD7E2;--nf-tint:#E8EFF5;--nf-field:#FFFFFF;--nf-field-border:#AFC2D3;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme="dark"][data-nofira-palette-dark="a"]{
 --nf-page:#0E1722;--nf-surface:#182737;--nf-ink:#F0F5FA;--nf-secondary:#B8C8D8;--nf-action:#316AA1;--nf-link:#A6CEF0;--nf-border:#3C5266;--nf-tint:#22384D;--nf-field:#102030;--nf-field-border:#66839D;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme="light"][data-nofira-palette-light="b"]{
 --nf-page:#F7F5F0;--nf-surface:#FFFEFB;--nf-ink:#272A2D;--nf-secondary:#5B6064;--nf-action:#315A86;--nf-link:#315A86;--nf-border:#D9D7D1;--nf-tint:#EDEAE3;--nf-field:#FFFEFB;--nf-field-border:#B8B7AF;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme="dark"][data-nofira-palette-dark="b"]{
 --nf-page:#17191B;--nf-surface:#24282B;--nf-ink:#F2F0EA;--nf-secondary:#C2C5C3;--nf-action:#8A5B2F;--nf-link:#E4B97F;--nf-border:#4E5354;--nf-tint:#303638;--nf-field:#1C2224;--nf-field-border:#777F80;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme="light"][data-nofira-palette-light="c"]{
 --nf-page:#EFF5F4;--nf-surface:#FFFFFF;--nf-ink:#142E32;--nf-secondary:#47656A;--nf-action:#196C70;--nf-link:#196C70;--nf-border:#C5D9D8;--nf-tint:#E0EEEB;--nf-field:#FFFFFF;--nf-field-border:#A8C6C4;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme="dark"][data-nofira-palette-dark="c"]{
 --nf-page:#0B1D22;--nf-surface:#153139;--nf-ink:#EAF6F5;--nf-secondary:#AAC9CB;--nf-action:#237A78;--nf-link:#8BDED3;--nf-border:#46686B;--nf-tint:#20444B;--nf-field:#0E252B;--nf-field-border:#6B989B;--nf-on-action:#FFFFFF;
}
html[data-nofira-theme]{
 --nf-bg:var(--nf-page);--nf-card:var(--nf-surface);--nf-text:var(--nf-ink);--nf-muted:var(--nf-secondary);--nf-line:var(--nf-border);--nf-blue:var(--nf-action);--nf-blue-dark:var(--nf-action);--nf-soft:var(--nf-tint);--nf-blue-050:var(--nf-tint);
 color-scheme:light;
}
html[data-nofira-theme="dark"]{color-scheme:dark}
html[data-nofira-theme] body,
html[data-nofira-theme] .nofira-community-page{background:var(--nf-page);color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app{color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app :is(.nf-sidebar,.nf-aside-card,.nf-profile,.nf-profile-main,.nf-panel,.nf-photo-card,.nf-profile-menu,.nf-conversation,.nf-message,.nf-list-card,.nf-project-card,.nf-search-page,.nf-settings,.nf-onboarding,.nf-notification-list,.nf-profile-gallery-panel,.nf-profile-gallery-panel .nf-gallery-card,.nf-profile-counts>span,.nf-work-tabs button,.nf-search-profile,.nf-search-group,.nf-collection-photo,.nf-profile-photo-actions-menu){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(.nf-topbar,.nf-profile-tabs,.nf-feed-tabs,.nf-card-head,.nf-card-body,.nf-profile-gallery-panel,.nf-profile-counts,.nf-section-head){border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app :is(.nf-nav button,.nf-profile-nav button,.nf-profile-menu-action,.nf-tab,.nf-work-tabs button,.nf-profile-tabs button,.nf-feed-tabs button){color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app :is(.nf-nav button.active,.nf-nav button:hover,.nf-profile-nav button.active,.nf-profile-nav button:hover,.nf-work-tabs button:hover,.nf-profile-tabs button:hover,.nf-feed-tabs button:hover){background:var(--nf-tint);color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app :is(.nf-meta,.nf-muted,.nf-help,.nf-profile-counts small,.nf-profile-gallery-head>span,.nf-notification-context,.nf-message small,.nf-profile-gallery-card small,.nf-search-group small){color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app :is(.nf-author,.nf-mini-profile .nf-author,.nf-profile h1,.nf-profile h2,.nf-profile h3,.nf-profile strong,.nf-profile-identity h1,.nf-profile-counts>span strong,.nf-aside-card strong,.nf-profile-menu strong,.nf-photo-card strong,.nf-notification-list strong,.nf-search-group strong){color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app .nf-aside :is(.nf-author,strong,b){color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app .nf-search-group :is(small,em){color:var(--nf-secondary)!important}
html[data-nofira-theme] #nofira-app :is(.nf-author-link,.nf-details summary,.nf-group-description summary,.nf-comment-actions button){color:var(--nf-link)}
html[data-nofira-theme] #nofira-app :is(.nf-profile-gallery-panel .nf-gallery-card,.nf-profile-counts>span,.nf-work-tabs button){background:var(--nf-surface);color:var(--nf-ink);border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app :is(.nf-btn.primary,.nf-add,.nf-mobile-add,.nf-notification-filters button.active,.nf-work-tabs button.active,.nf-profile-nav .nf-btn,.nf-group-tabs button.active){background:var(--nf-action)!important;border-color:var(--nf-action)!important;color:var(--nf-on-action)!important}
html[data-nofira-theme] #nofira-app :is(.nf-btn.secondary,.nf-btn:not(.primary):not(.danger),.nf-notification-filters button:not(.active)){background:var(--nf-surface);color:var(--nf-ink);border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app :is(.nf-btn.primary,.nf-add,.nf-mobile-add,.nf-notification-filters button.active,.nf-work-tabs button.active) :is(strong,b,small){color:var(--nf-on-action)!important}
html[data-nofira-theme] #nofira-app :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select,.nf-global-search,.nf-aside-search){background:var(--nf-field);color:var(--nf-ink);border-color:var(--nf-field-border)}
html[data-nofira-theme] #nofira-app :is(input,textarea)::placeholder{color:var(--nf-secondary);opacity:1}
html[data-nofira-theme] #nofira-app :is(input,textarea,select,button):focus-visible{outline:2px solid var(--nf-link);outline-offset:2px}
html[data-nofira-theme] #nofira-app :is(.nf-chip,.nf-notification-item.unread,.nf-notification-detail,.nf-notification-item.expanded,.nf-message.mine,.nf-conversation.active,.nf-group-post.announcement,.nf-group-photo-picker label:has(input:checked)){background:var(--nf-tint);color:var(--nf-ink);border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app :is(.nf-messages-layout,.nf-conversation-list,.nf-message-stream,.nf-notification-item,.nf-details,.nf-comment,.nf-search-filter,.nf-search-results){border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app :is(.nf-mobile-nav,.nf-profile-tabs,.nf-feed-tabs){background:var(--nf-surface);color:var(--nf-ink);border-color:var(--nf-border)}
html[data-nofira-theme] #nofira-app .nf-profile-tabs button.active,
html[data-nofira-theme] #nofira-app .nf-work-tabs button.active{background:var(--nf-action);border-color:var(--nf-action);color:var(--nf-on-action)}
html[data-nofira-theme] #nofira-app .nf-profile-tabs button.active{background:var(--nf-tint);border-color:var(--nf-action);color:var(--nf-ink)}
/* Dialogs, including the photo opened above a group. */
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog,.nf-group-overlay){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-photo-side,.nf-simple-form,.nf-upload,.nf-panel,.nf-group-modal,.nf-group-modal-body,.nf-group-tabs,.nf-group-description,.nf-group-composer,.nf-group-post,.nf-group-photo-grid button,.nf-group-members>article,.nf-group-pending,.nf-group-management>div,.nf-group-empty,.nf-group-join-box,.nf-group-photo-selector,.nf-group-batch,.nf-group-post-edit-form,.nf-comment,.nf-list-card){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-dialog-head,.nf-photo-side,.nf-group-tabs){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(h1,h2,h3,strong,.nf-author-link,.nf-details summary,.nf-photo-meta){color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-muted,.nf-help,small){color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-btn.primary,.nf-group-tabs button.active){background:var(--nf-action)!important;color:var(--nf-on-action)!important;border-color:var(--nf-action)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-group-tool,.nf-group-post.announcement,.nf-group-photo-picker label:has(input:checked)){background:var(--nf-tint)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) .nf-group-tool :is(strong,small){color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) .nf-group-modal-cover :is(h2,p,small){color:#fff!important}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) .nf-group-modal-cover{background-color:var(--nf-action)}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) .nf-group-modal-cover:not([style*="background-image"]){background-image:linear-gradient(120deg,var(--nf-action),var(--nf-page))}
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) :is(.nf-group-composer textarea,.nf-group-composer select,.nf-group-admin-message textarea,#nf-group-broadcast textarea){background:var(--nf-field)!important;color:var(--nf-ink)!important;border-color:var(--nf-field-border)!important}
html[data-nofira-theme] #nofira-app .nf-group-overlay :is(.nf-dialog-head,.nf-group-photo-selector,.nf-group-batch-card,.nf-group-batch-checks){background:var(--nf-surface);color:var(--nf-ink);border-color:var(--nf-border)}
html[data-nofira-theme] :is(.nf-group-overlay,.nf-license-dialog,.nf-comment-text-modal){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] :is(.nf-group-overlay,.nf-license-dialog,.nf-comment-text-modal) :is(.nf-dialog-head,.nf-group-batch-card,.nf-group-batch-picker,.nf-group-photo-selector-grid label,.nf-license-item){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] :is(.nf-group-overlay,.nf-license-dialog,.nf-comment-text-modal) :is(h1,h2,h3,strong,.nf-group-batch>p){color:var(--nf-ink)!important}
html[data-nofira-theme] :is(.nf-group-overlay,.nf-license-dialog,.nf-comment-text-modal) :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select){background:var(--nf-field)!important;color:var(--nf-ink)!important;border-color:var(--nf-field-border)!important}
html[data-nofira-theme] :is(.nf-group-overlay,.nf-license-dialog,.nf-comment-text-modal) .nf-btn.primary{background:var(--nf-action)!important;color:var(--nf-on-action)!important;border-color:var(--nf-action)!important}
/* The fullscreen image viewer stays black so the photograph itself is never tinted. */

/* Photo notes use a distinct palette surface in both appearances (option B).
   Keep every foreground tied to the surface directly behind it. */
html[data-nofira-theme] #nofira-app .nf-photo-card .nf-card-body {
 background:var(--nf-tint)!important;
 color:var(--nf-ink)!important;
 border-color:var(--nf-border)!important;
}
html[data-nofira-theme] #nofira-app .nf-photo-card .nf-card-body :is(.nf-title,.nf-text,.nf-actions-row,.nf-action,.nf-react) {
 color:var(--nf-ink)!important;
}
html[data-nofira-theme] #nofira-app .nf-photo-card .nf-card-body .nf-text {
 line-height:1.55;
}
html[data-nofira-theme] #nofira-app .nf-photo-card .nf-card-body .nf-chip {
 background:var(--nf-surface)!important;
 color:var(--nf-ink)!important;
 border:1px solid var(--nf-border)!important;
}
html[data-nofira-theme] #nofira-app .nf-photo-card .nf-card-body .nf-actions-row {
 border-color:var(--nf-border)!important;
}
/* The upload picker is a field, even when the surrounding dialog is dark. */
html[data-nofira-theme] #nofira-app .nf-dropzone,
html[data-nofira-theme] #nofira-app :is(#nf-dialog,#nf-subdialog) .nf-dropzone {
 background:var(--nf-field)!important;
 color:var(--nf-ink)!important;
 border-color:var(--nf-field-border)!important;
}
html[data-nofira-theme] #nofira-app .nf-dropzone #nf-upload-prompt {
 color:var(--nf-ink)!important;
 opacity:1;
}
html[data-nofira-theme] #nofira-app .nf-dropzone:hover {
 background:var(--nf-tint)!important;
 border-color:var(--nf-link)!important;
}

/* A shared item uses the same surface pairing as other feed entries. */
html[data-nofira-theme] #nofira-app .nf-share-card {
 background:var(--nf-tint)!important;
 color:var(--nf-ink)!important;
 border-color:var(--nf-border)!important;
}
html[data-nofira-theme] #nofira-app .nf-share-card .nf-share-head {
 color:var(--nf-ink)!important;
}
html[data-nofira-theme] #nofira-app .nf-share-card .nf-share-head small {
 color:var(--nf-secondary)!important;
}

/* Reminder for attempted image saving, using the selected light/dark palette. */
html[data-nofira-theme] :is(#nofira-app,.nf-fullscreen-photo-dialog,.nf-group-overlay) :is(.nf-image-wrap,.nf-viewer,.nf-gallery-card,.nf-profile-photo-wrap,.nf-project-feed-card,.nf-project-sequence,.nf-group-post-gallery,.nf-group-post-photo,.nf-group-photo-grid,.nf-group-cover,.nf-challenge-photo,.nf-content-cover,.nf-fullscreen-photo-stage,.nf-collection-photo,.nf-portfolio-picker) img {
 -webkit-user-drag:none;
 -webkit-touch-callout:none;
 user-select:none;
}
html[data-nofira-theme] .nf-image-save-notice {
 position:fixed;
 z-index:2147483647;
 box-sizing:border-box;
 border:1px solid var(--nf-border);
 background:var(--nf-surface);
 color:var(--nf-ink);
 box-shadow:0 18px 48px rgba(0,0,0,.35);
 padding:16px 18px;
 font-family:inherit;
}
html[data-nofira-theme] .nf-image-save-notice h2 {
 margin:0 0 6px;
 color:var(--nf-ink)!important;
 font-size:1rem;
 line-height:1.3;
}
html[data-nofira-theme] .nf-image-save-notice p {
 margin:0;
 color:var(--nf-secondary);
 font-size:.88rem;
 line-height:1.45;
}
html[data-nofira-theme] .nf-image-save-notice button {
 display:block;
 margin:11px 0 0 auto;
 min-height:38px;
 padding:8px 14px;
 border:1px solid var(--nf-border);
 border-radius:var(--nf-button-radius,5px);
 background:var(--nf-surface);
 color:var(--nf-ink);
 font:inherit;
 font-size:.85rem;
 font-weight:650;
 cursor:pointer;
}
html[data-nofira-theme] .nf-image-save-notice button:focus-visible{outline:2px solid var(--nf-link);outline-offset:2px}
html[data-nofira-theme] .nf-image-save-notice.is-desktop {
 right:20px;
 bottom:20px;
 width:min(350px,calc(100vw - 32px));
 border-left:4px solid var(--nf-action);
 border-radius:10px;
}
html[data-nofira-theme] .nf-image-save-notice.is-mobile {
 left:0;
 right:0;
 bottom:0;
 width:100%;
 padding:18px 20px max(22px,env(safe-area-inset-bottom));
 border-radius:18px 18px 0 0;
}
html[data-nofira-theme] .nf-image-save-notice.is-mobile .nf-image-save-grip {
 display:block;
 width:34px;
 height:4px;
 border-radius:4px;
 margin:-8px auto 15px;
 background:var(--nf-secondary);
}
html[data-nofira-theme] .nf-image-save-notice.is-mobile .nf-image-save-symbol {
 display:grid;
 place-items:center;
 width:34px;
 height:34px;
 margin-bottom:10px;
 border-radius:7px;
 background:var(--nf-tint);
 color:var(--nf-ink);
}
html[data-nofira-theme] .nf-image-save-notice.is-mobile button {
 width:100%;
 min-height:42px;
 margin-top:15px;
 background:var(--nf-action);
 border-color:var(--nf-action);
 color:var(--nf-on-action);
}
html[data-nofira-theme] #nofira-app .nf-moderation-photo{display:flex;align-items:center;gap:11px;margin:8px 0 12px;padding:8px;border:1px solid var(--nf-border);border-radius:9px;background:var(--nf-surface);color:var(--nf-ink);min-width:0}
html[data-nofira-theme] #nofira-app .nf-moderation-photo img{display:block;width:68px;height:68px;flex:0 0 68px;object-fit:cover;border-radius:6px;background:var(--nf-tint)}
html[data-nofira-theme] #nofira-app .nf-moderation-photo span{min-width:0;display:grid;gap:3px}
html[data-nofira-theme] #nofira-app .nf-moderation-photo strong{overflow-wrap:anywhere;color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app .nf-moderation-photo small{color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app .nf-moderation-notif-thumb{width:38px;height:38px;object-fit:cover;border-radius:7px;background:var(--nf-tint)}
html[data-nofira-theme] #nofira-app .nf-notification-simple-detail:has(.nf-moderation-photo){display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch}
html[data-nofira-theme] #nofira-app .nf-notification-simple-detail .nf-moderation-photo{grid-column:1/-1;margin:0}
@media(max-width:700px){html[data-nofira-theme] #nofira-app .nf-notification-simple-detail:has(.nf-moderation-photo){grid-template-columns:minmax(0,1fr)}}
html[data-nofira-theme] #nofira-app .nf-moderation-feature{display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px;align-items:start;padding:14px;border:1px solid var(--nf-border);border-radius:9px;background:var(--nf-surface)}
html[data-nofira-theme] #nofira-app .nf-moderation-feature .nf-moderation-photo{display:grid;padding:0;margin:0;border:0;background:transparent}
html[data-nofira-theme] #nofira-app .nf-moderation-feature .nf-moderation-photo img{width:100%;height:135px;object-fit:contain;flex:none;background:var(--nf-tint)}
html[data-nofira-theme] #nofira-app .nf-moderation-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 12px;color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app .nf-moderation-people>div{padding:10px;border-radius:7px;background:var(--nf-tint);min-width:0}
html[data-nofira-theme] #nofira-app .nf-moderation-people small{display:block;color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app .nf-moderation-people strong{display:block;overflow-wrap:anywhere;color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app .nf-moderation-feature .nf-moderation-people{margin:0;grid-template-columns:1fr}
html[data-nofira-theme] #nofira-app .nf-notification-simple-detail:has(.nf-moderation-people) .nf-moderation-people{grid-column:1/-1}
html[data-nofira-theme] #nofira-app .nf-notification-simple-detail:has(.nf-moderation-people) blockquote{grid-column:1/-1;margin:0;border-left:3px solid var(--nf-action);padding-left:12px}
html[data-nofira-theme] #nofira-app .nf-moderation-attention{outline:2px solid var(--nf-action);outline-offset:2px}
@media(max-width:550px){html[data-nofira-theme] #nofira-app .nf-moderation-feature,html[data-nofira-theme] #nofira-app .nf-moderation-people{grid-template-columns:1fr}}
/* Empty states need a foreground paired with their actual panel surface. */
html[data-nofira-theme] #nofira-app .nf-empty {
 background:var(--nf-surface)!important;
 color:var(--nf-secondary)!important;
 border-color:var(--nf-border)!important;
 opacity:1;
}
html[data-nofira-theme] #nofira-app .nf-empty :is(p,span,strong,small) {
 color:var(--nf-secondary)!important;
 opacity:1;
}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field{display:grid;grid-template-columns:170px minmax(0,1fr);gap:9px 16px;align-items:center;padding:12px 14px;border:1px solid var(--nf-border);border-radius:10px;background:var(--nf-surface);color:var(--nf-ink);min-width:0}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field>label{font-weight:650}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-preview{grid-column:2;display:flex;align-items:center;gap:13px;min-width:0}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-preview img{width:90px;height:72px;object-fit:cover;border-radius:7px;flex:none;background:var(--nf-tint)}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog [data-preview="avatar"] img{width:72px;height:72px;border-radius:50%}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-preview>div{display:grid;gap:7px;justify-items:start;min-width:0}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-preview strong{color:var(--nf-ink);font-size:.9rem}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-preview button[hidden]{display:none!important}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-placeholder{display:grid;place-items:center;width:90px;height:72px;padding:6px;text-align:center;background:var(--nf-tint);border:1px dashed var(--nf-border);border-radius:7px;color:var(--nf-secondary);font-size:.75rem}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field>input{grid-column:2;width:100%;min-width:0;margin:0;padding:8px;border:1px solid var(--nf-field-border);border-radius:8px;background:var(--nf-field);color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field>small{grid-column:2;color:var(--nf-secondary)}
@media(max-width:720px){html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field{grid-template-columns:1fr}html[data-nofira-theme] #nofira-app #nf-dialog.nf-profile-edit-dialog .nf-profile-media-field>:is(.nf-profile-media-preview,input,small){grid-column:1}}

/* Shared foreground/surface pairs for content rendered in every social section. */
html[data-nofira-theme] #nofira-app :is(.nf-stat-cards>div,.nf-table,.nf-table th,.nf-table td,.nf-empty,.nf-event-list>article,.nf-notifications>article,.nf-report-list>article,.nf-analog-fields,.nf-portfolio-picker label,.nf-project-feed-card,.nf-content-card,.nf-conversation-panel,.nf-conversation-list,.nf-message-composer,.nf-message-search,.nf-critique-callout,.nf-multiselect>summary,.nf-multiselect-options,.nf-save-collection-option,.nf-save-new-collection,.nf-home-notice){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(.nf-table th,.nf-notifications>article.unread,.nf-conversation.active,.nf-save-collection-option:has(input:checked)){background:var(--nf-tint)!important;color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app :is(.nf-stat-cards>div,.nf-table,.nf-empty,.nf-notifications>article,.nf-report-list>article) :is(strong,b,h2,h3){color:var(--nf-ink)!important}
html[data-nofira-theme] #nofira-app :is(.nf-stat-cards>div,.nf-table,.nf-empty,.nf-notifications>article,.nf-report-list>article) :is(span,small){color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app .nf-work-panel-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
html[data-nofira-theme] #nofira-app .nf-work-panel-title h3{margin:0;color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app .nf-work-intro{margin:-6px 0 16px;color:var(--nf-secondary)}
@media(max-width:600px){html[data-nofira-theme] #nofira-app .nf-work-panel-title{align-items:flex-start;flex-direction:column;gap:10px}html[data-nofira-theme] #nofira-app .nf-work-intro{margin:0 0 14px}}
html[data-nofira-theme] #nofira-app :is(.nf-profile-counts>div,.nf-messages-layout,.nf-conversation-head,.nf-message-profile-link,.nf-portfolio-picker label,.nf-project-builder-row button,.nf-project-order button,.nf-save-new-collection,.nf-critique-callout,.nf-comment-text-dialog textarea){background:var(--nf-surface)!important;color:var(--nf-ink)!important;border-color:var(--nf-border)!important}
html[data-nofira-theme] #nofira-app :is(.nf-multiselect>summary,.nf-multiselect-options,.nf-project-photo-fields input,.nf-project-photo-fields textarea,.nf-project-photo-fields select,.nf-group-photo-search input){background:var(--nf-field)!important;color:var(--nf-ink)!important;border-color:var(--nf-field-border)!important}
html[data-nofira-theme] #nofira-app :is(.nf-notifications>article,.nf-report-list>article,.nf-table) :is(p,td){color:var(--nf-ink)}
/* Breathing room between the four statistics and the timeline panel. */
html[data-nofira-theme] #nofira-app .nf-stat-cards{margin-bottom:20px}
@media(max-width:720px){html[data-nofira-theme] #nofira-app .nf-stat-cards{margin-bottom:16px}}
/* Moderation: two persistent sections with clear empty states. */
html[data-nofira-theme] #nofira-app .nf-moderation-sections{display:grid;gap:18px;margin-top:18px}
html[data-nofira-theme] #nofira-app .nf-moderation-section{padding:22px;min-width:0}
html[data-nofira-theme] #nofira-app .nf-moderation-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
html[data-nofira-theme] #nofira-app .nf-moderation-section-head h3{margin:0;color:var(--nf-ink)}
html[data-nofira-theme] #nofira-app .nf-moderation-section-head span{padding:5px 10px;background:var(--nf-tint);color:var(--nf-secondary);border-radius:var(--nf-button-radius,5px);font-size:.8rem}
html[data-nofira-theme] #nofira-app .nf-moderation-empty{text-align:center;margin:0;padding:28px 12px;color:var(--nf-secondary)}
html[data-nofira-theme] #nofira-app .nf-moderation-section .nf-report-list{display:grid;gap:12px}
/* The brand mark follows the selected palette without a baked-in square. */
html[data-nofira-theme] #nofira-app .nf-brand{display:grid;place-items:center;width:100%;padding:12px 0 20px;text-align:center;color:var(--nf-action)}
html[data-nofira-theme] #nofira-app .nf-brand-mark{display:block;width:min(132px,68%);height:auto;aspect-ratio:1;background:var(--nf-tint);border-radius:24px;color:var(--nf-action)}
/* Give the portrait and account identity consistent room inside the right rail. */
html[data-nofira-theme] #nofira-app #nf-me-card{padding:16px 18px 18px!important}
html[data-nofira-theme] #nofira-app #nf-me-card .nf-mini-profile{gap:12px;align-items:center}
@media(max-width:700px){html[data-nofira-theme] #nofira-app .nf-brand{padding:8px 0 14px}html[data-nofira-theme] #nofira-app .nf-brand-mark{width:min(104px,55%)}html[data-nofira-theme] #nofira-app .nf-moderation-section{padding:16px}}
/* Approved NOFIRA logo and transparent default portraits. */
html[data-nofira-theme] #nofira-app .nf-brand{display:grid;place-items:center;width:100%;padding:2px 0 16px;background:transparent!important}
html[data-nofira-theme] #nofira-app .nf-brand img{display:block;width:min(160px,78%);max-width:100%;height:auto;background:transparent;object-fit:contain}
html[data-nofira-theme] #nofira-app img[src*="nofira-user-standard-"],
html[data-nofira-theme] #nofira-app img[src*="nofira-user-admin-"]{object-fit:contain;background:transparent;border-radius:11px}
@media(max-width:700px){html[data-nofira-theme] #nofira-app .nf-brand img{width:min(122px,65%)}}
