/* Ichiraku Competitive Club: shared identity for public, player and staff views.
   Keep status colors, data visualizations and team colors semantically distinct. */
:root {
 --color-bg-primary:#10100f; --color-bg-secondary:#191814;
 --color-bg-card:#211f19; --color-bg-card-hover:#2b271f;
 --color-bg-elevated:#29251e; --color-bg-sidebar:#14130f;
 --color-white:#f2e9d8; --color-gray-100:#eee5d5; --color-gray-200:#ddd5c5;
 --color-gray-300:#cbc3b4; --color-gray-400:#b6b0a2; --color-gray-500:#a59d8c;
 --color-gray-600:#8d8575; --color-gray-700:#514b3e; --color-gray-800:#302c23; --color-gray-900:#1b1914;
 --color-red:#ce1934; --color-red-light:#ec4057; --color-red-dark:#a5142b;
 --color-gold:#dfb86c; --color-gold-light:#ecc77e; --color-gold-dark:#b98c3c;
 --border-color:#c8b59129; --border-radius:5px; --border-radius-lg:8px;
 --shadow-md:0 12px 32px #0003; --surface-edge:inset 0 1px #f3deac0a;
}
body.club-ui{background:radial-gradient(ellipse at 100% 0,#84312816,transparent 55rem),#10100f;color:var(--color-white)}
.club-ui ::selection{background:#9d2639;color:#fff}.club-ui :is(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid #ecc77e;outline-offset:3px}
.club-ui .main-content:before{background-image:linear-gradient(90deg,#d6b26806 1px,transparent 1px),linear-gradient(#d6b26806 1px,transparent 1px);opacity:.35;background-size:80px 80px}
.club-ui .sidebar{background:linear-gradient(170deg,#211b15,#13130f 45%);border-color:var(--border-color);box-shadow:8px 0 30px #0002}
.club-ui .sidebar-logo{border-color:var(--border-color)}.club-ui .sidebar-logo img{filter:none}.club-ui .sidebar-logo-text{font-size:15px;letter-spacing:.03em;color:#f2e9d8}.club-ui .sidebar-logo-text span{font-size:9px;color:#bca477;letter-spacing:.1em}
.club-ui .sidebar-section-label{font-family:monospace;letter-spacing:.14em;color:#a9936d;font-size:9px}
.club-ui .sidebar-item{border-radius:3px;color:#b9b3a5;border-color:transparent}.club-ui .sidebar-item:hover{background:#d9b86a0b;color:#f5e5c5}.club-ui .sidebar-item.active{background:linear-gradient(90deg,#d2a34719,transparent);color:#f4d397;border-color:#d2b36d29;box-shadow:inset 3px 0 #dfb86c}.club-ui .sidebar-item.active .sidebar-icon{color:#ecc77e}.club-ui .sidebar-footer{background:#14130f;border-color:var(--border-color)}.club-ui .sidebar-user{border-radius:4px;background:#c9af7010;border-color:var(--border-color)}
.club-ui .app-header{background:#171611ed;border-color:var(--border-color);box-shadow:0 5px 20px #0002}.club-ui .header-greeting span{color:#ecc77e}.club-ui .header-stat-card{background:#242016;border-color:#d2b36d2b;border-radius:4px}.club-ui .header-avatar-wrapper{background:#bfa35a0b;border-color:var(--border-color)}
.club-ui :is(.card,.stat-widget,.academy-stat,.academy-path-step,.class-card,.tournament-card-premium,.tournament-metric,.ranking-metric,.reward-card-premium,.news-card-premium,.news-featured-side,.calendar-event,.calendar-stat,.team-panel,.community-stat,.community-channel,.community-chat-card,.messages-shell,.contact-panel,.legal-card,.legal-toc,.policy-card){background:linear-gradient(145deg,#242119,#181713);border-color:var(--border-color);border-radius:6px;box-shadow:var(--surface-edge),0 9px 25px #0002}
.club-ui .card-header{background:#d4b86b04;border-color:var(--border-color)}.club-ui .card-title{color:#f2e9d8;letter-spacing:.02em}.club-ui :is(.card-title .icon,.card-action){color:#e4c180}.club-ui .stat-widget-value{color:#f3e7cb}.club-ui .stat-widget-label{color:#bbb29f}.club-ui .stat-widget-icon{border-radius:4px;border-color:#d2b36d25}
.club-ui :is(.banner,.academy-hero,.tournament-hero,.ranking-hero,.community-hero,.member-team-hero,.shop-vault,.newsroom-hero,.calendar-command){background:radial-gradient(ellipse at 100% 0,#c39b4622,transparent 58%),linear-gradient(120deg,#38201d,#1c1914 62%);border:1px solid #c7a76335;border-radius:6px;box-shadow:inset 0 1px #f3deac0b,0 16px 40px #0002}
.club-ui :is(.banner-pretitle,.academy-kicker,.tournament-kicker,.ranking-kicker,.shop-kicker,.newsroom-kicker,.calendar-kicker){color:#e3c486;letter-spacing:.15em;font-family:monospace;font-size:10px}
.club-ui :is(.banner-title,.academy-title,.ranking-hero h1,.member-team-hero h1,.tournament-hero h1,.shop-vault h1,.newsroom-hero h1,.calendar-command h1){color:#f2e9d8;letter-spacing:0}.club-ui :is(.banner-title .accent,.academy-title span){color:#ecc77e}.club-ui .banner-overlay{background:linear-gradient(90deg,#201a1370,transparent)}.club-ui .banner-glow{opacity:.3}
.club-ui .btn{border-radius:4px}.club-ui .btn-primary{background:#ce1934;border-color:#e7334b;box-shadow:inset 0 1px #ff879540,0 6px 20px #a4132420}.club-ui .btn-primary:hover{background:#e02640;box-shadow:0 8px 24px #a4132430}.club-ui .btn-outline{background:transparent;border-color:#d2b99440;color:#e3d9c5}.club-ui .btn-outline:hover{background:#d6b2680d;border-color:#c4a168}.club-ui .btn-gold{background:#e3bd75;color:#231b10;border-color:#e3bd75}.club-ui .btn-gold:hover{background:#efd29a}.club-ui .badge{border-radius:3px}
.club-ui :is(.form-control,.form-input,.form-select,.chat-input,.messages-input,.team-input){background:#13130f;border-color:#c8b59138;color:#eee5d4;border-radius:4px;box-shadow:inset 0 1px 3px #0002}.club-ui :is(.form-control,.form-input,.form-select,.chat-input,.messages-input,.team-input):focus{border-color:#d8b46d;box-shadow:0 0 0 3px #d8b46d16}.club-ui :is(input,textarea)::placeholder{color:#9a9282}.club-ui .form-label{color:#d5c9b3}.club-ui input[type=checkbox]{accent-color:#ce1934}.club-ui select option{background:#211e17;color:#f2e9d8}
.club-ui .table th{background:#292319;color:#d6c29b;border-color:#c8b59126}.club-ui .table td{border-color:#c8b5911c}.club-ui .table tbody tr:hover{background:#ccb16e08}.club-ui .table-wrapper{border-color:var(--border-color);border-radius:5px}.club-ui :is(.modal,.modal-content){background:#211e18;border-color:#c8b59140;border-radius:8px}.club-ui .modal-header,.club-ui .modal-footer{border-color:var(--border-color)}
.club-ui :is(.tabs,.shop-tabs,.news-filter-row,.messages-toolbar,.messages-active-header,.team-panel-head,.chat-header,.chat-composer,.messages-composer,.team-composer){background:#1b1914;border-color:var(--border-color)}
.club-ui :is(.tab.active,.shop-tabs .active,.team-switcher a.active,.messages-mode.active){background:#ddba6e14;border-color:#d8b46d66;color:#ecc77e;border-radius:3px}
.club-ui :is(.messages-sidebar,.messages-main,.chat-messages,.team-chat-list,.private-message-list){background:#15140f;border-color:var(--border-color)}.club-ui :is(.conversation-row,.person-row){border-color:#ccb16e15}.club-ui .conversation-row:hover,.club-ui .conversation-row.active{background:#d3b67512;border-color:#c3a06150}
.club-ui :is(.chat-bubble,.private-bubble,.team-bubble){background:#2a261e;border-color:#cfb77630;color:#eee5d4;border-radius:8px}.club-ui :is(.chat-message.mine .chat-bubble,.private-message.mine .private-bubble,.team-message.mine .team-bubble){background:#422028;border-color:#d7627340;color:#f7e5df}.club-ui :is(.chat-name,.person-name,.team-bubble-head){color:#e6c991}.club-ui .chat-legal-notice{background:#242016;color:#c0b5a0;border-color:#d2b36d30;border-radius:4px}.club-ui .chat-legal-notice a{color:#ecc77e}.club-ui :is(.chat-counter,.messages-counter,.team-counter,.private-time,.conversation-time){color:#b1a58e}
/* Entry and support screens share the same card edges and warm paper typography. */
.club-ui .auth-page{background:#10100f}.club-ui .auth-left{background:radial-gradient(ellipse at 65% 30%,#af722329,transparent 60%),linear-gradient(145deg,#35191d,#171510);border-right:1px solid #c8b59129}.club-ui .auth-left:before{background:repeating-linear-gradient(135deg,transparent 0 70px,#d4b46c07 70px 71px);opacity:1}.club-ui .auth-left:after{background:linear-gradient(115deg,transparent,#e1b46708,transparent)}.club-ui .auth-right{background:#14130f}.club-ui .auth-left-title{color:#f2e9d8;letter-spacing:0}.club-ui .auth-left-title .gold{color:#ecc77e}.club-ui .auth-left-title .red{color:#ed3a54}.club-ui .auth-left-desc{color:#c4b9a4}.club-ui .auth-feature-icon{border-radius:3px;background:#d3b46c0b;color:#ecc77e;border-color:#d3b46c30}.club-ui .auth-form-header h1,.club-ui .auth-form-title{color:#f2e9d8}.club-ui .auth-link{color:#ecc77e}
.club-ui :is(.contact-nav,.legal-nav,.policy-nav){border-color:var(--border-color)}.club-ui :is(.contact-panel,.legal-card,.policy-card){background:linear-gradient(135deg,#252016,#181713)}.club-ui :is(.contact-panel h1,.legal-hero h1,.policy-hero h1){color:#f2e9d8}.club-ui :is(.contact-option,.policy-item,.legal-identity,.policy-toc a){border-color:#c8b59129;border-radius:4px;background:#bfa35a05}.club-ui :is(.legal-card a:not(.btn),.policy-item a,.policy-toc a){color:#ecc77e}.club-ui .legal-identity dd{color:#dfd5c2}.club-ui :is(.legal-brand strong,.policy-brand strong,.contact-brand strong){font-size:14px}
@media(hover:hover){.club-ui :is(.card,.stat-widget,.class-card,.reward-card-premium,.team-panel):hover{border-color:#c8b59148}}
@media(max-width:768px){.club-ui .page-content{padding:18px 14px 28px}.club-ui .banner{border-radius:5px}.club-ui .sidebar-logo-text{font-size:14px}.club-ui .card-header,.club-ui .card-body{padding:18px}}
@media(prefers-reduced-motion:reduce){.club-ui *,.club-ui *:before,.club-ui *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.club-ui .auth-feature{background:#211d16;border:1px solid #c8b59129;border-radius:4px;color:#d8cbb4}.club-ui .auth-form-subtitle a{color:#ecc77e}.club-ui .auth-logo{color:#f2e9d8}
