/* FANGST v149 | Halloween – cinematic red, blood, bats, moon, spiderwebs.
 * EVERY RULE for the theme is scoped. Other four modes are unchanged.
 * Real UI markup is retained: all menus remain clickable, accessible controls.
 */
body.fangst-halloween{
 color-scheme:dark;
 --navy:#180609;--navy2:#2e0a10;--turq:#ed2130;--turq2:#ff6570;
 --ink:#f3eceb;--muted:#d1bcc0;--bg:#0b0406;--stroke:#952c35;
 --white:#190709;--warn:#ffca7b;--err:#ff5b65;--success:#8aeac0;
 color:#f3eceb;
 background:radial-gradient(ellipse at top,#2a070e 0%,#0b0407 58%,#030103 100%)!important;
}
body.fangst-halloween .app-shell{
 background:
  radial-gradient(ellipse at 90% 10%,rgba(165,2,19,.18),transparent 35%),
  linear-gradient(#0a0204,#170609 42%,#0a0205 83%,#070206)!important;
 color:#f3eceb!important;
 box-shadow:0 0 45px #ff001c23,0 0 4px #f41735!important;
}
body.fangst-halloween .topbar{
 position:relative;
 background:linear-gradient(125deg,#030103,#24050a 50%,#080204)!important;
 border-bottom:2px solid #ff2137!important;
 box-shadow:0 4px 17px #e00726a8, inset 0 -1px #ffb0b4!important;
 color:#fff!important;
 overflow:visible;
}
body.fangst-halloween .topbar::after{
 content:"";position:absolute;left:0;right:0;bottom:-17px;height:18px;
 pointer-events:none;z-index:3;
 background:url("fangst-halloween-blood-v149.svg") top center/100% 100% no-repeat;
 filter:drop-shadow(0 1px 3px #e80018);
}
body.fangst-halloween .topbar .brand.v105-brand{
 max-width:calc(100% - 128px)!important;
 width:clamp(152px,46vw,216px)!important;
 min-width:0;
}
body.fangst-halloween .topbar img.v105-header-logo{
 display:block!important;
 width:100%!important;height:auto!important;
 aspect-ratio:940 / 288!important;
 max-height:65px!important;
 object-fit:contain!important;
 opacity:1!important;
 background:transparent!important;
 animation:none!important;
 filter:drop-shadow(0 0 4px rgba(255,20,42,.42))!important;
}
body.fangst-halloween .topbar .iconbtn{
 background:rgba(169,6,27,.25)!important;
 color:#fff!important;
 border:1px solid #ed2540!important;
 box-shadow:0 0 6px #d7152e66;
}
body.fangst-halloween :is(.screen h1,.screen h2,.screen h3,.card h2,.card h3,.field label,.setting b,.stats b,.eyebrow){
 color:#f5eeee!important;
 text-shadow:0 1px 3px #000;
}
body.fangst-halloween :is(.muted,.micro.muted,.small.muted,.subtitle,.footnote,.card small,.setting p){
 color:#d6bfc1!important;
}
body.fangst-halloween :is(.card,.stats .stat,.upload,.dashed,.fa-news-card,.fa-news-empty,.fa-news-loading,.v57-catch-split,.v46-history,.install-panel,.fangst-inbox,.fangst-roster,.v90-crew-panel,.v75-roster-row,.fangst-participant-row){
 background:
   radial-gradient(ellipse at 86% -25%,rgba(185,9,25,.26),transparent 65%),
   linear-gradient(145deg,#250c11,#100608)!important;
 color:#f2e8e8!important;
 border:1px solid #a62735!important;
 box-shadow:inset 0 1px rgba(255,105,116,.13),0 6px 19px #0008,0 0 6px #bf10222b!important;
}
body.fangst-halloween :is(.card,.v87-details,.v67-weather,.v57-catch-split,.v66-water-card) :is(h1,h2,h3,header,b,strong,label,p,span,small,li){
 color:#f3e8e8;
}
body.fangst-halloween .btn,
body.fangst-halloween button.btn,
body.fangst-halloween .btn.dark,
body.fangst-halloween .v87-action,
body.fangst-halloween .v57-action{
 background:linear-gradient(135deg,#86101b,#49080e)!important;
 color:#fff4f4!important;
 border:1px solid #ff394f!important;
 text-shadow:0 1px 3px #280006!important;
 box-shadow:inset 0 1px rgba(255,173,177,.22),0 0 9px rgba(235,22,43,.36)!important;
}
body.fangst-halloween :is(.btn.secondary,.btn.outline,button.back,button[data-v67-back-event],.v57-secondary-actions button){
 background:linear-gradient(125deg,#321017,#180709)!important;
 color:#fce5e5!important;
 border:1px solid #b9414c!important;
}
body.fangst-halloween :is(.btn,button):hover:not(:disabled){
 filter:brightness(1.11)!important;
}
body.fangst-halloween :is(button,a,input,textarea,select):focus-visible{
 outline:3px solid #fc5260!important;
 outline-offset:2px!important;
}
body.fangst-halloween :is(button,.btn):disabled{opacity:.57!important}
body.fangst-halloween .bottomnav{
 background:linear-gradient(180deg,#17070b,#050103 83%)!important;
 border-top:2px solid #ff283d!important;
 box-shadow:0 -4px 17px #ff002c6e,inset 0 1px 3px #ff8b8b48!important;
}
body.fangst-halloween .bottomnav .navitem{
 color:#e0d7d7!important;
 text-shadow:0 1px 3px #000!important;
}
body.fangst-halloween .bottomnav .navitem.active{
 color:#ff5362!important;font-weight:900!important;
 text-shadow:0 0 7px #ff1e38!important;
}
body.fangst-halloween .bottomnav .navitem.active svg{
 filter:drop-shadow(0 0 5px #fa233f)!important;
}
body.fangst-halloween .bottomnav .navitem.capture svg{
 background:radial-gradient(circle,#ae1121,#280408)!important;
 border:2px solid #fb273c!important;
 color:#fff!important;
 box-shadow:0 0 16px #fa172cba,inset 0 0 9px #f12e43!important;
}
body.fangst-halloween .bottomnav .navitem.capture.active svg{
 background:radial-gradient(circle,#e72339,#4f0710)!important;
}
body.fangst-halloween .hero{
 background:
  linear-gradient(125deg,rgba(9,2,5,.65),rgba(45,3,11,.24)),
  radial-gradient(ellipse at 85% 25%,#ee294b48,transparent 40%),
  linear-gradient(135deg,#19080c,#490711,#160407)!important;
 border:2px solid #e6253e!important;
 box-shadow:0 0 17px #e11a3154!important;
 color:#fff!important;
}
body.fangst-halloween :is(.detail-top,.profile-hero){
 background:
  radial-gradient(ellipse at right top,#ad1d3233,transparent 60%),
  linear-gradient(125deg,#380710,#130409)!important;
 color:#fff!important;border:1px solid #d33344!important;
 box-shadow:0 0 12px #b01a3042!important;
}
body.fangst-halloween :is(.hero,.detail-top,.profile-hero) :is(h1,h2,h3,p,b,strong,small,.eyebrow){
 color:#fff0f0!important;
}
body.fangst-halloween .profile-hero .avatar{
 background:#5d111b!important;color:#ffebee!important;border:2px solid #e43a51!important;
}
body.fangst-halloween :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select){
 color:#fff4f4!important;
 -webkit-text-fill-color:#fff4f4;
 background:#250b10!important;
 border:1px solid #a73b49!important;
 caret-color:#ff6f7d;
}
body.fangst-halloween :is(input,textarea)::placeholder{
 color:#c0a1a7!important;opacity:1!important;
}
body.fangst-halloween :is(input[type=checkbox],input[type=radio],input[type=range]){
 accent-color:#ee3047!important;
}
body.fangst-halloween .theme-buttons{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:8px!important;
}
body.fangst-halloween .theme-buttons .btn{
 min-width:0!important;min-height:47px!important;
 font-size:12px!important;white-space:normal!important;
 padding:10px 5px!important;
 background:#301017!important;color:#f7dadd!important;
}
body.fangst-halloween .theme-buttons [data-theme=halloween].dark{
 background:linear-gradient(120deg,#ef243d,#8b0918)!important;
 border:2px solid #ff747d!important;
 box-shadow:0 0 12px #f02b45a2!important;
 color:#fff!important;
}
body.fangst-halloween .tabs{
 background:#240b10!important;color:#f5d9dd!important;border:1px solid #94313c!important;
}
body.fangst-halloween .tab{color:#dec0c5!important;}
body.fangst-halloween .tab.active{
 background:#640b17!important;color:#fff!important;
 box-shadow:0 0 10px #ca1c3944!important;
}
body.fangst-halloween :is(.v87-action-live,.v87-action-chat,.v87-action-catch,.v87-action-judge){
 background:linear-gradient(135deg,#5c0913,#2c0710)!important;
 color:#fff!important;border:2px solid #e62a40!important;
 box-shadow:0 0 12px #e81e3d88!important;
}
body.fangst-halloween :is(.v54-countdown,.v87-competition .v54-countdown,.v87-public-event .v54-countdown){
 background:radial-gradient(circle at center,#4b0817,#18070c)!important;
 border:2px solid #ff3648!important;
 box-shadow:0 0 18px #f327476e,inset 0 0 13px #b51e3140!important;
 color:#fff1f1!important;
}
body.fangst-halloween .v54-countdown :is(h1,h2,h3,div,span,small,p,b,strong){
 color:#ffeded!important;
 text-shadow:0 0 5px #e9314155!important;
}
body.fangst-halloween .v54-countdown :is(.v54-clock,strong){
 color:#ff7379!important;
}
body.fangst-halloween :is(.v87-details,.v54-session,.v54-day,.v54-sessions,.v75-number-box,.v75-roster-row,.fangst-participant-row,.fr131-invites,.v49-map-meta,.v46-await,.v67-weather,.fangst-notification-row,.v57-home-box){
 background:linear-gradient(130deg,#280b11,#130609)!important;
 border:1px solid #a12d3e!important;
 color:#f5e6e8!important;
}
body.fangst-halloween .v60-fish-quote{
 background:#250b12!important;color:#ffe0e3!important;border-color:#d72c40!important;
}
body.fangst-halloween :is(.v67-home-links>button,.v67-home-links.v112-home-tools>button,.v90-video-home,.v112-judge-home,.v57-secondary-actions button,.v66-shortcuts>button){
 background:
  radial-gradient(circle at 90% 10%,#8a123038,transparent 55%),
  linear-gradient(145deg,#350b14,#140507)!important;
 border:1px solid #ed3147!important;
 color:#fff!important;
 box-shadow:0 0 9px #e1253a45!important;
}
body.fangst-halloween :is(.v67-home-links,.v66-shortcuts) button :is(span,strong,small,svg){
 color:#f9e9ed!important;
}
body.fangst-halloween .pill:not(.amber):not(.red):not(.green){
 background:#4b1420!important;color:#ffe1e7!important;border:1px solid #b34b57!important;
}
body.fangst-halloween .alert{
 background:#423017!important;color:#ffe4ac!important;border-color:#8f633b!important;
}
body.fangst-halloween #toast{
 background:#360914!important;color:white!important;border:1px solid #ee3049!important;
}
body.fangst-halloween :is(#fr131-chat-mini,#fr137-chat-strip){
 background:linear-gradient(130deg,#490912,#170508)!important;
 border:2px solid #ef314c!important;color:#fff!important;
 box-shadow:0 0 9px #f3274454!important;
}
body.fangst-halloween #fr131-chat-panel{
 background:#17090d!important;
 color:#fbe9ed!important;
 border:2px solid #e12d47!important;
 box-shadow:0 12px 35px #000a,0 0 13px #d91d3d8c!important;
}
body.fangst-halloween #fr131-chat-panel header{
 background:#3b0912!important;color:white!important;
 border-bottom:1px solid #e42c42!important;
}
body.fangst-halloween #fr131-chat-panel header *{color:#fff!important}
body.fangst-halloween :is(#fr131-chat-messages,#fr131-chat-form){
 background:#170709!important;color:#fbe9eb!important;
}
body.fangst-halloween #fr131-chat-panel :is(.fr131-message,.fr131-chat-line){
 background:#2c0a12!important;color:#ffeeee!important;border-color:#a52a3b!important;
}
body.fangst-halloween #fr131-chat-form button{
 background:#a0182c!important;color:#fff!important;
}
body.fangst-halloween #fr137-open-chat{
 background:#380b16!important;color:#fff0f0!important;border:1px solid #cf3d4b!important;
}
body.fangst-halloween :is(#fr120-panel,#fr120-mini,.fr120-panel,.fr120-mini){
 background:#26080e!important;color:#fff!important;border-color:#ea3246!important;
}
body.fangst-halloween :is(#fr120-panel,#fr120-mini) :is(label,p,span,strong,small){
 color:#fff!important;
}
body.fangst-halloween .fangst-back-competition-v144{
 background:#2f0913!important;color:#ffe6e9!important;border:1px solid #df3851!important;
}
body.fangst-halloween .auth{
 background:radial-gradient(circle at 70% 15%,#8d152e77,transparent 43%),linear-gradient(#15050a,#090204)!important;
 color:#fff!important;
}
body.fangst-halloween .auth-panel{
 background:#22090f!important;color:#fff!important;border:1px solid #dd3148!important;
}
body.fangst-halloween .auth-panel :is(h1,h2,p,label){color:#fff0f0!important;}
body.fangst-halloween a:not(.btn){color:#ff8791!important;}
body.fangst-halloween :is(.hero,.detail-top,.profile-hero,.auth) a:not(.btn){
 color:#ffafb5!important;
}
/* Homepage: genuine interactive controls dressed like the uploaded reference */
body.fangst-halloween .ha-home-v149{
 position:relative;
 background:linear-gradient(180deg,#0a0305,#1f070a 26%,#100407 68%,#060203)!important;
 padding-bottom:0!important;
 overflow:hidden;
}
body.fangst-halloween .ha-home-v149::before{
 content:"";position:absolute;top:0;left:0;right:0;height:220px;
 background:
   url("fangst-halloween-bats-v149.svg") center 8px/85% auto no-repeat,
   radial-gradient(circle at 79% 18%,#dc11354f,transparent 30%);
 opacity:.9;pointer-events:none;z-index:0;
}
body.fangst-halloween .ha-home-v149>*{
 position:relative;z-index:1;
}
body.fangst-halloween .ha-home-v149 .ha-greeting-v149{
 min-height:173px!important;
 margin:7px -2px 14px!important;
 padding:22px 13px 20px!important;
 border:0!important;
 border-radius:15px!important;
 position:relative;isolation:isolate;
 overflow:hidden!important;
 background:
  linear-gradient(90deg,rgba(10,1,3,.89),rgba(10,1,4,.47) 62%,rgba(10,1,4,.12)),
  url("fangst-halloween-night-v149.svg") right center/57% 100% no-repeat,
  radial-gradient(circle at 80% 30%,#ce172e,#180408 65%)!important;
}
body.fangst-halloween .ha-home-v149 .ha-greeting-v149::before{
 content:"";position:absolute;inset:0;border-bottom:2px solid #ee1b30;
 box-shadow:inset 0 -12px 13px -15px #ff2332;
 pointer-events:none;z-index:-1;
}
body.fangst-halloween .ha-greeting-v149 :is(h1,h2,p,span,strong){
 color:#fff7f7!important;text-shadow:0 2px 7px #000,0 0 4px #960b20!important;
 max-width:70%;
}
body.fangst-halloween .ha-greeting-v149 h1{
 font-size:clamp(23px,5.7vw,32px)!important;
 line-height:1.2!important;
 font-weight:900!important;
 letter-spacing:-.35px;
}
body.fangst-halloween .ha-greeting-v149 p{
 font-size:clamp(14px,4vw,18px)!important;
 font-weight:700!important;
 line-height:1.34!important;
}
body.fangst-halloween .ha-home-v149 .v66-water-hero,
body.fangst-halloween .ha-home-v149 .v57-action,
body.fangst-halloween .ha-home-v149 .v66-shortcuts>button,
body.fangst-halloween .ha-home-v149 .v67-home-links>button{
 position:relative;
 isolation:isolate;
 overflow:hidden;
 background:
  radial-gradient(ellipse at 90% 0%,#b10f234e,transparent 42%),
  linear-gradient(120deg,#36070f,#130407 74%)!important;
 border:2px solid #ef2639!important;
 border-radius:19px!important;
 box-shadow:inset 0 0 13px #a8132555,0 2px 3px #000,0 0 13px #ff002c8c!important;
 color:#fcecef!important;
 text-shadow:0 1px 3px #000!important;
 margin-bottom:10px;
 min-height:96px;
 transition:box-shadow .2s ease,transform .18s ease!important;
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button):hover{
 box-shadow:0 0 17px #fe324eaa,inset 0 0 13px #fe39555a!important;
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button):active{
 transform:scale(.987);
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button)::before{
 content:"";position:absolute;right:-3px;top:-3px;width:88px;height:78px;
 background:url("fangst-halloween-web-v149.svg") top right/cover no-repeat;
 opacity:.63;pointer-events:none;z-index:-1;
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action)::after{
 content:"";position:absolute;left:0;right:0;bottom:0;height:10px;
 background:linear-gradient(180deg,transparent,#ef1b3235);
 box-shadow:inset 0 -1px #fa3b4d;
 pointer-events:none;
}
body.fangst-halloween .ha-home-v149 .v66-water-hero{
 width:100%;
 min-height:105px!important;
 border-radius:23px!important;
}
body.fangst-halloween .ha-home-v149 .v57-actions{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:11px!important;
}
body.fangst-halloween .ha-home-v149 .v57-action{
 min-width:0!important;min-height:131px!important;
 text-align:left!important;
 padding:12px 11px!important;
 display:flex!important;flex-direction:column!important;
 justify-content:center!important;align-items:flex-start!important;
}
body.fangst-halloween .ha-home-v149 .v57-action-icon{
 font-size:29px!important;
 filter:drop-shadow(0 0 5px #ff2233)!important;
}
body.fangst-halloween .ha-home-v149 .v57-action strong{
 font-size:clamp(14px,3.7vw,21px)!important;
 line-height:1.15!important;
 color:#fff9f9!important;
 text-shadow:0 2px 4px #000!important;
}
body.fangst-halloween .ha-home-v149 .v57-action small{
 color:#f2dddd!important;
 font-size:clamp(10px,2.9vw,14px)!important;
 line-height:1.2!important;
}
body.fangst-halloween .ha-home-v149 :is(.v57-arrow,.v66-water-hero>span:last-child){
 color:#ff465b!important;
 font-size:25px!important;
 filter:drop-shadow(0 0 4px #f2213d)!important;
}
body.fangst-halloween .ha-home-v149 .v66-shortcuts{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:9px!important;
}
body.fangst-halloween .ha-home-v149 .v66-shortcuts button{
 min-width:0!important;
 padding:12px 9px!important;
 font-size:12px!important;
 min-height:64px!important;
}
body.fangst-halloween .ha-home-v149 .ha-scenery-v149{
 height:160px;
 margin:4px -12px 0;
 position:relative;
 background:
   linear-gradient(180deg,#10040800 0%,#09020416 20%,#060103cc 96%),
   url("fangst-halloween-footer-v149.svg") center 45%/cover no-repeat,
   radial-gradient(circle at 52% 33%,#ae081b,#080305 80%);
 border-bottom:1px solid #ff3547;
 pointer-events:none;
}
body.fangst-halloween .ha-home-v149 .ha-scenery-v149::after{
 content:"";position:absolute;bottom:0;left:0;right:0;height:30px;
 background:linear-gradient(180deg,transparent,#060305);
 pointer-events:none;
}
@media(max-width:375px){
 body.fangst-halloween .ha-home-v149 .v57-action strong{font-size:14px!important}
 body.fangst-halloween .ha-home-v149 .v57-action{padding:10px 8px!important}
 body.fangst-halloween .ha-home-v149 .ha-greeting-v149{min-height:160px!important}
}
@media(prefers-reduced-motion:reduce){
 body.fangst-halloween *{transition:none!important;scroll-behavior:auto!important;}
}


/* Detailed red-black menu panels and responsive ornamentation from the reference. */
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button){
 background:
  linear-gradient(105deg,rgba(11,1,4,.12),rgba(30,4,9,.35)),
  url("fangst-halloween-panel-v149.svg") center/cover no-repeat,
  linear-gradient(125deg,#290509,#080305)!important;
 background-blend-mode:normal,normal,normal;
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button)::before{
 z-index:2!important;
}
body.fangst-halloween .ha-home-v149 :is(.v66-water-hero,.v57-action,.v66-shortcuts>button,.v67-home-links>button) > *{
 position:relative;z-index:3;
}
body.fangst-halloween .theme-buttons{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;
}
body.fangst-halloween .theme-buttons [data-theme="halloween"]{
 grid-column:1 / -1;
}
body.fangst-halloween .theme-buttons [data-theme="halloween"].dark{
 background:linear-gradient(125deg,#ad0b1b,#fb263d)!important;
 color:#fff9f9!important;border:2px solid #ff7a83!important;
 box-shadow:0 0 16px #ff273c95!important;
}
body.fangst-halloween :is(button,input,select,textarea,a):focus-visible{
 outline:3px solid #ff6378!important;outline-offset:2px!important;
}
body.fangst-halloween :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select){
 color:#fff6f6!important;
 background:#22090f!important;border-color:#b33b49!important;
 -webkit-text-fill-color:#fff6f6;
}
body.fangst-halloween :is(input,textarea)::placeholder{color:#cbb0b3!important;opacity:1}
body.fangst-halloween :is(input[type="checkbox"],input[type="radio"],input[type="range"]){
 accent-color:#e82b42!important;
}
body.fangst-halloween :is(.card,.tabs,.v87-details,.v54-session,.fa-news-card,.v67-weather,.v90-crew-panel){
 scrollbar-color:#a82335 #20070d;
}
@media(prefers-reduced-motion:reduce){
 body.fangst-halloween :is(.v66-water-hero,.v57-action,.btn){transition:none!important}
}
