/* HOTFIX 027 | Forum, curve crescita e contrasto pannelli chiari.
   Tutte le regole sono CSS-only e reversibili. */
#app .ninja-v04.game-layout .forum-directory{max-width:1300px;margin:0 auto 36px;padding:8px 10px;}
#app .ninja-v04.game-layout .forum-directory>.page-heading{margin:0 0 22px!important}
#app .ninja-v04.game-layout .forum-directory-group{margin:20px 0;background:#1e302a;border:1px solid #98714a;box-shadow:0 5px 15px #0b171481;overflow:hidden}
#app .ninja-v04.game-layout .forum-directory-group>header{padding:12px 20px;background:#68362d;border-bottom:2px solid #be8c55}
#app .ninja-v04.game-layout .forum-directory-group>header h2{margin:0!important;color:#ffe1ad!important;font:700 21px 'Cormorant Garamond',Georgia,serif!important;letter-spacing:.13em!important;text-align:center!important}
#app .ninja-v04.game-layout .forum-directory-group>header p{margin:4px 0 0!important;text-align:center!important;font-size:12px!important;color:#f5d3aa!important}
#app .ninja-v04.game-layout .forum-directory-group>div{padding:12px 17px}
#app .ninja-v04.game-layout .board-directory-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 15px;min-width:0;text-decoration:none!important;background:#273c32;color:#f7ddb6!important;border-bottom:1px solid #806342}
#app .ninja-v04.game-layout .board-directory-row:nth-child(even){background:#2b4238}
#app .ninja-v04.game-layout .board-directory-row:hover{background:#425a45!important;box-shadow:inset 4px 0 #e0ae70!important}
#app .ninja-v04.game-layout .board-directory-row .board-directory-icon{font-size:18px;color:#e2a260!important}
#app .ninja-v04.game-layout .board-directory-row>span:nth-child(2){min-width:0}
#app .ninja-v04.game-layout .board-directory-row strong{display:block;font-size:14px!important;color:#ffe0ab!important}
#app .ninja-v04.game-layout .board-directory-row small{display:block;font-size:12px!important;font-style:italic;color:#d5c4a6!important;white-space:normal}
#app .ninja-v04.game-layout .board-directory-row em{font-size:11px!important;color:#d9c19b!important;font-style:normal;white-space:nowrap}
#app .ninja-v04.game-layout .board-empty-group{margin:0!important;padding:14px!important;text-align:center!important;color:#e0c6a1!important}
#app .ninja-v04.game-layout .boards-hub.board-detail-view{display:block!important;max-width:1200px;margin-inline:auto}
#app .ninja-v04.game-layout .boards-hub.board-detail-view .boards-main{min-width:0!important;width:100%!important;margin:0!important}
#app .ninja-v04.game-layout .board-back{margin:5px 0 15px}
#app .ninja-v04.game-layout .board-back a{color:#f1c793;text-decoration:none}

/* Level editor is now a calculator with a 10-point preview, not 100 manual inputs. */
#app .ninja-v04.game-layout .curve-generator{max-width:none!important;background:#1c302b!important;border:1px solid #a57a4f!important;color:#f6debd!important}
#app .ninja-v04.game-layout .curve-generator :is(h2,p,label){color:#f6debd!important}
#app .ninja-v04.game-layout .curve-controls{display:flex;flex-wrap:wrap;align-items:end;gap:15px;margin:20px 0}
#app .ninja-v04.game-layout .curve-controls>label{flex:1 1 210px;max-width:350px}
#app .ninja-v04.game-layout .curve-controls input{display:block;width:100%;background:#f4e6cf!important;color:#263d32!important;border:1px solid #a88257!important;min-height:47px!important;padding:10px!important;font-size:16px!important}
#app .ninja-v04.game-layout .curve-controls>button{min-height:47px}
#app .ninja-v04.game-layout .curve-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;background:#263c32;border:1px solid #8e6e4f;padding:15px;margin-bottom:17px}
#app .ninja-v04.game-layout .curve-preview>p{grid-column:1/-1;font-size:13px!important;margin:0 0 6px!important;color:#e6c49a!important}
#app .ninja-v04.game-layout .curve-preview>span{border:1px solid #876d4d;background:#30483b;padding:10px;color:#f5d8ae!important;display:flex;flex-direction:column;gap:4px}
#app .ninja-v04.game-layout .curve-preview b{color:#ffdfb4!important;font-size:16px}

/* Clan Premio / ability linkage editor: deep ink on pale forms; creamy text on dark ones. */
#modal .prize-power-editor{margin:16px 0!important;padding:13px!important;border:1px solid #a37b51!important;background:#e4d3b4!important;color:#2e3e31!important}
#modal .prize-power-editor :is(legend,p,label,span){color:#263b32!important}
#modal .prize-power-editor legend{font-size:15px;font-weight:800;padding:0 7px;color:#263b32!important}
#modal .prize-power-editor .power-admin-scroll{max-height:240px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:6px}
#modal .prize-power-editor .power-admin-scroll label{padding:8px;background:#f5e9d1!important;border:1px solid #c0a77f!important;display:flex;align-items:start;gap:8px;overflow-wrap:anywhere}

/* Contrast rule: on LIGHT surfaces never set gold/light colored text. */
#app .ninja-v04.game-layout .market-item .market-copy footer{background:#e7d7b9!important;color:#273d31!important;border:1px solid #997b55!important;padding:12px!important}
#app .ninja-v04.game-layout .market-item .market-copy footer :is(b,small,span,p){color:#273d31!important;text-shadow:none!important}
#app .ninja-v04.game-layout .market-item .market-copy footer .button.quiet{background:#315749!important;color:#fff2d5!important;border:1px solid #8b683f!important}
#app .ninja-v04.game-layout .market-item .market-copy footer .button.primary{background:#68332c!important;color:#fff1cf!important}
#app .ninja-v04.game-layout :is(.registry-paper,.dossier-information,.profile-upload-card,.admin-edit-fields,.stat-rules-panel) input[style*="background:#fff"],
#app .ninja-v04.game-layout input:is([type=number],[type=text],[type=url]){text-shadow:none!important}
#modal:not(:has(#edit-character-form)) :is(.prize-form,.admin-edit-fields,.form-grid) label{color:#34483b!important}
#modal:not(:has(#edit-character-form)) :is(.prize-form,.admin-edit-fields,.form-grid) input:not([type=checkbox]):not([type=radio]),
#modal:not(:has(#edit-character-form)) :is(.prize-form,.admin-edit-fields,.form-grid) select,
#modal:not(:has(#edit-character-form)) :is(.prize-form,.admin-edit-fields,.form-grid) textarea{background:#fff1d8!important;color:#243d30!important;border:1px solid #a68b6b!important}
#modal:not(:has(#edit-character-form)) :is(.prize-form,.admin-edit-fields,.form-grid) :is(legend,p,small){color:#374839!important}
#app .ninja-v04.game-layout :is(.profile-upload-card,.character-cover-placeholder,.market-art[style*="background"]) :is(label,p,small){color:#263c32!important}
/* Older generic beige form inputs and badges. Preserve dark-theme buttons. */
#app .ninja-v04.game-layout :is(.level-editor,.admin-edit-fields) input:not([type=checkbox]){background:#f5e6ca!important;color:#203d32!important}
#app .ninja-v04.game-layout .market-copy footer .button{font-weight:800!important}

@media(max-width:700px){
 #app .ninja-v04.game-layout .board-directory-row{grid-template-columns:24px 1fr;gap:8px;padding:10px}
 #app .ninja-v04.game-layout .board-directory-row em{grid-column:2}
 #app .ninja-v04.game-layout .forum-directory-group>div{padding:7px}
 #app .ninja-v04.game-layout .curve-controls{flex-direction:column;align-items:stretch}
 #app .ninja-v04.game-layout .curve-controls>label{max-width:none;width:100%;flex:none}
 #modal .prize-power-editor .power-admin-scroll{grid-template-columns:1fr}
}
