/* Obsidian & Bronze 1.0 — shared visual contract. See DESIGN.md.
   Load after module styles. No image, route, permission or interaction changes. */
:root{
 --cw-accent:#C9955E;--cw-accent-hover:#DFB481;--cw-accent-soft:#32271E;
 --cw-bg:#0D1011;--cw-panel:#141819;--cw-panel-soft:#1B2021;--cw-input:#0C1112;
 --cw-border:#5C4936;--cw-border-hover:#96704F;--cw-text:#E7E1D5;--cw-muted:#BCB5A8;
 --cw-on-accent:#171310;--cw-focus:var(--cw-accent-hover);
 --cw-font-body:"Segoe UI",Arial,sans-serif;--cw-font-heading:Georgia,"Times New Roman",serif;
 --cw-font-xs:12px;--cw-font-sm:14px;--cw-font-md:16px;--cw-font-lg:18px;
 --cw-heading-1:clamp(28px,3.5vw,44px);--cw-heading-2:clamp(22px,2.5vw,30px);--cw-heading-3:20px;
 --cw-space-1:4px;--cw-space-2:8px;--cw-space-3:12px;--cw-space-4:16px;--cw-space-5:24px;--cw-space-6:32px;
 --cw-space:clamp(16px,2vw,24px);--cw-radius:6px;--cw-radius-lg:10px;
 --cw-max-width:1400px;--cw-gutter:clamp(16px,2vw,28px);--cw-inner-max:calc(var(--cw-max-width) - 2 * var(--cw-gutter));
 --cw-shadow:0 8px 24px #0003;--cw-card-gradient:linear-gradient(125deg,var(--cw-panel-soft),var(--cw-panel));
 --cw-button-bg:linear-gradient(#282B27,#181D1C);--cw-button-hover:#32332B;--cw-button-active:#3A2C20;
 --cw-control-height:44px;--cw-success:#A6C78C;--cw-danger:#E3A298;--cw-warning:#E2C58A;
 --heading-ink:var(--cw-accent);--gold:var(--cw-accent);--paper:var(--cw-text);--line:var(--cw-border);
}
html body{color:var(--cw-text);background-color:var(--cw-bg);font-family:var(--cw-font-body)!important;--account-gold:var(--cw-accent);--account-bronze:var(--cw-border);--profile-gold:var(--cw-accent);--profile-bronze:var(--cw-border);--profile-border:var(--cw-border)}
/* The reference word WISSEN is live text; the surrounding logo and banner are untouched. */
html body .site-header .brand-title b{color:var(--cw-accent)!important}
html body :is(h1,h2,h3,h4,h5,h6):not(.hero *,.portal-banner *){color:var(--cw-accent)!important;font-family:var(--cw-font-heading)!important}
html body :is(.cw-heading,.cw-server-eyebrow,.community-kicker,.image-post-kicker,.profile-image-title,.profile-stat-strip strong,.public-profile-count strong,.cw-server-stats strong,.cw-community-server-row small,.profile-meta-icon){color:var(--cw-accent)}
html body #homeView :is(.category-info strong,.feature-info strong){color:var(--cw-accent)!important}
html body :is(.cw-card,.cw-image-actions,.cw-image-downloads fieldset,.profile-stat-strip>span,.cw-profile-image-wrap,.profile-meta-text,.profile-meta-platform){border-color:var(--cw-border)!important;border-radius:var(--cw-radius);background-color:var(--cw-panel)}
html body.profile-page .profile-introduction{background:var(--cw-card-gradient)!important;border-color:var(--cw-border)!important;box-shadow:var(--cw-shadow)!important}
html body.profile-page :is(.profile-about,.profile-avatar-frame){background:var(--cw-panel)!important;border-color:var(--cw-border)!important}
html body :is(.profile-stat-strip>span,.public-profile-count,.cw-server-panel,.community-panel,.account-detail-section,.cw-card){color:var(--cw-text)}
html body :is(.cw-card,.cw-action,.cw-action-secondary,.cw-field){box-sizing:border-box;min-width:0}
html body .cw-card{padding:var(--cw-space);border:1px solid var(--cw-border);border-radius:var(--cw-radius);background:var(--cw-panel)}
html body :is(.account-primary,.cw-button,.catalog-button,.community-upload,.profile-gallery-all,.cw-image-action-row button,.cw-image-action-row a,.cw-community-server-links>a,.cw-action,.cw-action-secondary):not(.account-danger,.cw-danger){
 min-height:var(--cw-control-height);border:1px solid var(--cw-border-hover);border-radius:var(--cw-radius);background:var(--cw-button-bg);color:var(--cw-accent);font-family:var(--cw-font-body)!important;font-size:var(--cw-font-sm);line-height:1.35;box-shadow:none;white-space:normal;overflow-wrap:anywhere;max-width:100%;
}
html body :is(.cw-action,.cw-action-secondary){display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;text-decoration:none;gap:8px;cursor:pointer}
html body :is(.cw-secondary,.cw-action-secondary){background:var(--cw-panel);color:var(--cw-text)}
html body :is(.account-primary,.cw-button,.catalog-button,.community-upload,.profile-gallery-all,.cw-image-action-row button,.cw-image-action-row a,.cw-action,.cw-action-secondary):not(.account-danger,.cw-danger):not(:disabled):hover{border-color:var(--cw-accent);background:var(--cw-button-hover)}
html body :is(.catalog-types button,.community-tabs button,.cw-server-nav a,.account-edit-menu button,.cw-image-action-row button)[aria-pressed=true],html body :is(.community-tabs button,.cw-server-nav a)[aria-current]{color:var(--cw-accent);background:var(--cw-button-active);border-color:var(--cw-accent)}
html body .cw-image-downloads button.cw-export-primary{background:var(--cw-button-active);border-color:var(--cw-accent);color:var(--cw-text)}
html body .cw-image-share-dialog :is(h2,h3,legend){color:var(--cw-accent)}
html body :is(.cw-image-share-dialog,.cw-image-downloads,.cw-image-downloads fieldset,.cw-image-actions,.cw-report-dialog){border-color:var(--cw-border)}
html body :is(.cw-image-share-dialog,.cw-report-dialog){background:var(--cw-panel);color:var(--cw-text);border-radius:var(--cw-radius-lg)}
html body :is(.account-field,.cw-server-form,.community-toolbar,.cw-server-filterbar,.cw-report-dialog,.cw-image-share-dialog,.search-admin,.cw-field) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea),html body :is(input.cw-field,select.cw-field,textarea.cw-field){
 color:var(--cw-text);background:var(--cw-input)!important;border:1px solid var(--cw-border)!important;border-radius:var(--cw-radius);font-family:var(--cw-font-body)!important;min-width:0;max-width:100%;box-sizing:border-box;
}
html body :is(.cw-server-form,.cw-report-dialog,.cw-image-downloads) legend{color:var(--cw-accent)}
html body :is(.account-field,.cw-server-form,.cw-report-dialog) :is(input[type=checkbox],input[type=radio]),html body .cw-image-downloads input[type=checkbox]{accent-color:var(--cw-accent)}
html body :is(.catalog-types,.cw-server-filterbar,.community-tabs,.cw-server-nav,.account-edit-menu,.cw-image-action-row){border-color:var(--cw-border)}
html body :is(.profile-gallery-all,.image-back-button,.cw-community-server-links>a,.dialog-links a,.legal-back,.cw-image-actions [data-vote-login]){color:var(--cw-accent)}
html body :is(.cw-muted,.account-help,.cw-server-help,.catalog-note,.legal-date,.cw-image-downloads p,.cw-image-actions [data-vote-message]){color:var(--cw-muted)}
html body :is(button,a,input,select,textarea,[contenteditable=true]):focus-visible{outline:2px solid var(--cw-focus);outline-offset:3px}
html body button:disabled{cursor:default}
html body .cw-page{width:calc(100% - 2 * var(--cw-gutter));max-width:var(--cw-inner-max);margin:var(--cw-space) auto 40px;padding:var(--cw-space)}
html body .cw-stack{display:grid;gap:var(--cw-space-4)}
html body .cw-inline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cw-space-2)}
/* Typography scales are opt-in for containers, preserving compact legacy cards. */
html body :is(.cw-directory,.dungeon-page,.beginner-page,.search-admin,.cw-legal-page)>h1,html body .cw-heading-1{font-size:var(--cw-heading-1);line-height:1.25}
html body .cw-heading-2{font-size:var(--cw-heading-2);line-height:1.3}
html body .cw-heading-3{font-size:var(--cw-heading-3);line-height:1.35}
@media(max-width:600px){
 html body :is(.account-field,.cw-server-form,.cw-report-dialog,.cw-image-share-dialog,.cw-field) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea){font-size:16px}
 html body .cw-image-action-row button,html body .cw-image-action-row a{font-size:12px;padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){html body :is(.cw-card,.cw-action,.cw-action-secondary){transition:none}}

/* Semantic feedback stays distinct from brand accents. */
html body :is(.account-danger,.cw-danger) :is(h1,h2,h3,h4),html body .account-danger-link{color:var(--cw-danger)!important}
html body :is(.main-nav .active,.profile-languages a[aria-current=true],.legal-languages a.active,.language-button.selected){color:var(--cw-accent);border-color:var(--cw-accent)}
html body :is(.cw-directory,.search-admin,.cw-legal-page,.public-profile-footer,.image-page-footer) a:not(.cw-button,.profile-image-card,.cw-server-cover-link){color:var(--cw-accent)}
html body :is(.cw-server-mode-buttons,.catalog-types,.account-edit-menu) button[aria-pressed=true]{color:var(--cw-accent)!important;background:var(--cw-button-active)!important;border-color:var(--cw-accent)!important}
html body :is(.cw-server-intro,.community-gallery-heading p,.profile-biography,.beginner-lead,.cw-server-description,.cw-rich-text){font-family:var(--cw-font-body)!important;font-size:var(--cw-font-md);line-height:1.7}
html body :is(.community-build-content>p,.cw-server-card p,.category-info span>span,.feature-info>span){font-family:var(--cw-font-body)!important}
/* Search and section navigation use the same control palette. */
html body .hero .search-form>button{min-height:var(--cw-control-height);background:var(--cw-button-active);border-color:var(--cw-border-hover);color:var(--cw-text);font-family:var(--cw-font-body)!important;font-size:var(--cw-font-sm)}
html body .hero .search-form>button:hover{background:var(--cw-button-hover);border-color:var(--cw-accent)}
html body .main-nav .active{background:var(--cw-button-active);color:var(--cw-accent)}
html body .account-trigger{background:var(--cw-button-bg);border-color:var(--cw-border-hover);color:var(--cw-accent)}
html body :is(.catalog-types button,.account-edit-menu button,.community-tabs button,.cw-server-nav a){color:var(--cw-accent);border-color:var(--cw-border);font-family:var(--cw-font-body)!important;min-height:var(--cw-control-height)}
html body :is(.search-admin button,.image-share-actions button,.profile-share-buttons button){min-height:var(--cw-control-height);border:1px solid var(--cw-border-hover);border-radius:var(--cw-radius);background:var(--cw-button-bg);color:var(--cw-accent);font-family:var(--cw-font-body)!important;font-size:var(--cw-font-sm);line-height:1.35;max-width:100%;white-space:normal}
html body :is(.search-admin button,.image-share-actions button,.profile-share-buttons button):not(:disabled):hover{background:var(--cw-button-hover);border-color:var(--cw-accent)}
html body :is(.search-admin,.cw-server-form,.account-field,.cw-report-dialog,.profile-share-tools) :is(select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range])){min-height:var(--cw-control-height)}

/* Account workspace: narrower content and matching user menu; full-width hero stays unchanged. */
:root{--cw-account-max-width:1200px}
html body.account-page-active #accountView,html body.account-page-active.user-signed-in main>.user-nav{width:calc(100% - 2 * var(--cw-gutter));max-width:var(--cw-account-max-width);margin-inline:auto;box-sizing:border-box}
/* Server editing: separate image, text and social cards, shared validated save. */
html body #cwServerEditor.cw-server-editor{display:grid;gap:var(--cw-space-5);margin:var(--cw-space-5) 0}
html body .cw-editor-intro h2{margin:0 0 10px}
html body .cw-editor-intro p{margin:0}
html body .cw-editor-sections{display:flex;flex-wrap:wrap;gap:var(--cw-space-2)}
html body .cw-editor-sections a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid var(--cw-border-hover);border-radius:var(--cw-radius);color:var(--cw-accent);background:var(--cw-panel);font-size:14px;text-decoration:none}
html body .cw-editor-sections a:hover{background:var(--cw-button-hover)}
html body #cwServerEditor .cw-editor-card{display:grid;gap:var(--cw-space-4);padding:var(--cw-space)!important;margin:0;min-width:0;scroll-margin-top:100px}
html body #cwServerEditor .cw-editor-card>h3{margin:0;padding-bottom:12px;border-bottom:1px solid var(--cw-border);font-size:24px}
html body #cwServerEditor .cw-server-details-form{display:grid;gap:var(--cw-space-5);margin:0}
html body #cwServerEditor .cw-editor-card fieldset{margin:0}
html body #cwServerEditor .cw-server-gallery-tools{padding-top:var(--cw-space-4);min-width:0}
html body #cwServerEditor .cw-server-gallery-tools>h3{font-size:18px}
html body #cwServerEditor [data-server-image-tools]>summary{padding:12px;border:1px solid var(--cw-border);border-radius:var(--cw-radius);cursor:pointer;color:var(--cw-accent);min-height:44px;box-sizing:border-box}
html body #cwServerEditor .cw-editor-save{padding:var(--cw-space);border:1px solid var(--cw-border);border-radius:var(--cw-radius);background:var(--cw-panel-soft)}
html body #cwServerEditor .cw-editor-save>p:first-child{margin-top:0}
html body [data-feature-status]:empty{display:none}
html body [data-feature-status][data-kind=success]{padding:12px;border:1px solid var(--cw-border);border-radius:var(--cw-radius);color:var(--cw-success);background:var(--cw-input)}
html body .cw-save-feedback{position:fixed;z-index:1000;top:18px;right:18px;width:min(440px,calc(100% - 36px));display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--cw-accent);border-radius:var(--cw-radius);background:var(--cw-panel);box-shadow:var(--cw-shadow);box-sizing:border-box;color:var(--cw-text)}
html body .cw-save-feedback[hidden]{display:none!important}
html body .cw-save-feedback p{margin:0;min-width:0;flex:1;font:14px/1.6 var(--cw-font-body);overflow-wrap:anywhere}
html body .cw-save-feedback[data-kind=success]{border-left:4px solid var(--cw-success)}
html body .cw-save-feedback[data-kind=error]{border-color:var(--cw-danger)}
html body .cw-save-feedback button{flex-shrink:0;min-width:32px;min-height:32px;padding:0;border:1px solid var(--cw-border);border-radius:var(--cw-radius);background:var(--cw-input);color:var(--cw-text);font:22px/1 var(--cw-font-body);cursor:pointer}
@media(max-width:600px){html body .cw-save-feedback{top:10px;right:10px;width:calc(100% - 20px)}html body #cwServerEditor .cw-editor-card>h3{font-size:21px}html body .cw-editor-sections a{flex:1;padding-inline:10px}}
html body .cw-save-feedback button{min-width:44px;min-height:44px}
html body [data-feature-status][data-kind=error]{padding:12px;border:1px solid var(--cw-danger);border-radius:var(--cw-radius);color:var(--cw-danger);background:var(--cw-input)}
