/* Shared typography and controls; loaded after legacy page styles. */
html{--ui-bg:#0d0f14;--ui-card:#171a21;--ui-input:#101319;--ui-line:#303741;--ui-text:#f5f7f9;--ui-muted:#aab4c2;--ui-lime:#c8f66d}
body,input,select,textarea,button{font-family:Montserrat,Arial,sans-serif}
input,select,textarea,button{font-size:14px}
:is(.raffle-public,.raffle-admin) :is(button,a,input,select,textarea,[contenteditable]):focus-visible{outline:2px solid #c8f66d;outline-offset:3px}
:is(.raffle-public,.raffle-admin) input::placeholder,:is(.raffle-public,.raffle-admin) textarea::placeholder{color:#9aa5b5;opacity:1}
.raffle-public .back-range{display:none}
.raffle-public body>section>.container:not(.campaign-detail-body){margin:24px auto;padding:22px;max-width:600px;border:1px solid var(--ui-line);border-radius:20px;background:var(--ui-card)}
.raffle-public :is(.register-form,.form-contact form,.form-search-orders,.grid-results-order,.communications,.container-faq,.grid-winners){background:var(--ui-card);color:var(--ui-text);border:1px solid var(--ui-line);border-radius:14px;box-shadow:none;padding:16px}
.raffle-public :is(.register-form,.form-contact,.form-search-orders) :is(label,h1,h2,h3,h4,p,.bi){color:var(--ui-text)}
.raffle-public :is(.register-form,.form-contact,.form-search-orders) :is(input:not([type=file]):not([type=checkbox]):not([type=radio]),textarea,select){background:var(--ui-input);color:var(--ui-text);border:1px solid var(--ui-line);min-height:44px;box-shadow:none;font-size:16px}
.raffle-public :is(.register-form,.form-contact) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){width:100%}
.raffle-public :is(.btn-register,.form-contact button,.form-search-orders button,.btn-order-checkout,.btn-show-numbers){background:var(--ui-lime);color:#18210d;border:0;border-radius:10px;min-height:44px;font-weight:600}
.raffle-public :is(.btn-register,.form-contact button,.form-search-orders button):hover{background:#dafc98;color:#18210d}
.raffle-public :is(.register-form,.form-contact) button i{color:inherit}
.raffle-public :is(.faq,.container-faq,.term-of-use,.communication,.header-communications,.info-winner-home) :is(h1,h2,h3,h4,p,span){color:var(--ui-text);line-height:1.65}
.raffle-public :is(.term-of-use,.communication){overflow-wrap:anywhere;line-height:1.7;font-size:14px}
.raffle-public .container-faq{margin-top:12px}.raffle-public .container-faq h4{font-size:14px;cursor:pointer}
.raffle-public .form-search-orders span{gap:0}.raffle-public .form-search-orders button{min-width:44px;border-radius:0 10px 10px 0}
.raffle-public .grid-results-order :is(h3,h4,p){color:var(--ui-text)}
.raffle-public .btn-download-receipt{background:transparent;color:var(--ui-lime);border:1px solid var(--ui-line)}
.raffle-public .order-info{overflow-wrap:anywhere}.raffle-public .status-order-paid{background:#253b20;color:#dafc98;border:1px solid #4b6840;border-radius:14px}
.raffle-public .section-user-image label span{color:var(--ui-muted)!important}
/* Dashboard preserves the existing light/dark switch and semantic status colors. */
.raffle-admin{color-scheme:dark}.raffle-admin body{font-family:Montserrat,Arial,sans-serif}
.raffle-admin body:not(.dark-mode){color-scheme:light}
.raffle-admin body.dark-mode,.raffle-admin body.dark-mode :is(.dashboard-container,.dashboard-body,.dashboard-home,.dashboard-campaigns,.dashboard-order,.dashboard-gateways,.dashboard-settings,.dashboard-statistics,.dashboard-ranking,.dashboard-users,.dashboard-communications,.dashboard-search,.dashboard-new-campaign){background:var(--ui-bg)!important;color:var(--ui-text)!important}
.raffle-admin body.dark-mode :is(.container-sidebar,.services,.dashboard-charts,.content-gateways,.settings-content,.cutomize-content,.social-content,.track-content,.gateway-content,.nav-bar-settings,.nav-bar-new-campaign,.new-campaign,.new-campaign-container,.data-campaign,.images-campaign,.setting-container,.campaigns-grid,.order-grid,.text-editor,.login-admin-form){background:var(--ui-card)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important;border-radius:12px}
.raffle-admin :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){min-height:42px;border-radius:9px;box-shadow:none}
.raffle-admin body.dark-mode :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){background:var(--ui-input)!important;color:var(--ui-text)!important;border:1px solid var(--ui-line)!important}
.raffle-admin :is(.content-gateways,.new-campaign-form,.settings,.login-admin-form) button[type=submit],.raffle-admin :is(.btn-register,.btn-save,.btn-save-settings){background:var(--ui-lime)!important;color:#18210d!important;border:0;border-radius:9px;min-height:42px;padding:10px 18px;font-weight:600}
.raffle-admin :is(.content-gateways,.new-campaign-form,.settings,.login-admin-form) button[type=submit] *{color:inherit!important}
.raffle-admin :is(.nav-bar-settings,.nav-bar-new-campaign) button{border-color:var(--ui-lime)!important;min-height:44px;font-size:13px}
.raffle-admin input:checked+.slider{background:#587832!important}.raffle-admin .slider .text-on{color:#fff!important}
.raffle-admin .container-sidebar .nav-sidebar a:hover{background:#c8f66d18;border-radius:10px}
.raffle-admin body.dark-mode :is(.woovi-admin,.woovi-admin article){background:var(--ui-card)!important}
.raffle-admin body.dark-mode .woovi-admin button,.raffle-admin body.dark-mode .woovi-admin button *{color:#18210d!important}
.raffle-admin body.dark-mode .woovi-admin button:disabled{background:#252b33!important;color:#aab4c2!important;opacity:.6}
.raffle-admin :is(.dashboard-home,.dashboard-settings,.dashboard-new-campaign,.dashboard-campaigns,.dashboard-order,.dashboard-gateways)>h1{font-size:25px;font-weight:600;letter-spacing:-.5px}
@media(max-width:700px){
 .raffle-public body>section>.container:not(.campaign-detail-body){width:calc(100% - 24px);margin:16px auto;padding:16px}
 .raffle-public :is(.register-form,.form-contact form,.form-search-orders){padding:12px}
 .raffle-admin :is(.dashboard-home,.dashboard-settings,.dashboard-new-campaign,.dashboard-campaigns,.dashboard-order,.dashboard-gateways,.dashboard-statistics,.dashboard-ranking,.dashboard-users,.dashboard-communications,.dashboard-search){padding:18px 12px}
 .raffle-admin :is(.setting-container,.new-campaign-container){flex-direction:column;min-width:0}
 .raffle-admin :is(.nav-bar-settings,.nav-bar-new-campaign,.settings,.new-campaign){width:100%!important;min-width:0}
 .raffle-admin :is(.nav-bar-settings,.nav-bar-new-campaign) ul{display:flex;overflow-x:auto;max-width:100%;padding-bottom:6px}
 .raffle-admin :is(.nav-bar-settings,.nav-bar-new-campaign) button{white-space:nowrap}
 .raffle-admin .content-gateways{flex-direction:column;gap:24px}.raffle-admin .content-gateways form{width:100%}
 .raffle-admin .woovi-admin{margin:12px}
}
.raffle-public body :is(.container-faq,.communication,.term-of-use){background:var(--ui-card)!important;color:var(--ui-text)!important;border-color:var(--ui-line)}
.raffle-public .register-form form .password-container .bi{color:var(--ui-muted)!important}
.raffle-public .register-form .btn-register i{color:#18210d!important}
.raffle-admin body.dark-mode :is(.nav-bar-settings,.nav-bar-new-campaign)>div{background:var(--ui-card)!important;border:1px solid var(--ui-line);border-radius:12px}
.raffle-admin body.dark-mode :is(.nav-bar-settings,.nav-bar-new-campaign) button{color:var(--ui-text)!important}
@media(max-width:700px){.raffle-admin :is(.nav-bar-settings,.nav-bar-new-campaign)>div{display:flex;overflow-x:auto;max-width:100%}}
.raffle-admin .container-sidebar{width:65px;padding:14px 10px;border-radius:0!important;scrollbar-width:none}
.raffle-admin .container-sidebar::-webkit-scrollbar{display:none}
.raffle-admin .container-sidebar .content-sidebar .nav-sidebar ul :is(a li,li#theme-toggle){padding:10px 8px;min-height:44px}
.raffle-admin .container-sidebar.is-expanded{width:250px;box-shadow:12px 0 30px #0005}
.raffle-admin .container-sidebar .toggle-menu-sidebar{min-height:44px;margin-bottom:12px}
.raffle-admin :is(.filter-orders,.filter-campaigns,.filter-users,.filter-ranking,.filter-statistics) button[type=submit],.raffle-admin .pagination a.active{background:var(--ui-lime)!important;color:#18210d!important;border-color:var(--ui-lime)!important;border-radius:9px;min-height:42px}
.raffle-admin .btn-export-clients{background:transparent!important;color:var(--ui-lime)!important;border:1px solid var(--ui-line);border-radius:9px}
.raffle-admin body:not(.dark-mode) .btn-export-clients{color:#345311!important}
.raffle-admin body.dark-mode :is([class^="table-names-"],.user-grid,.statistic-grid,.ranking-grid,.search-form,.search-bigger-smaller-title){background:var(--ui-card)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important;border-radius:10px}
.raffle-admin :is(.filter-search,.filter-ranking,.filter-statistics,.filter-users) button[type=submit]{background:var(--ui-lime)!important;color:#18210d!important;border:0;border-radius:9px;min-height:42px}
