/* RIZE • Facțiuni V1.3 — sitewide dark identity, based on the user's original purple emblem.
   Shared with public pages, forms, status, installation and the entire admin interface. */
:root{
  color-scheme:dark;
  --ink:#f1f0f6;--coal:#0c0c12;--muted:#a2a0b1;--line:#353441;
  --paper:#111116;--panel:#1b1b23;--lime:#9a29f5;--lime-soft:#342044;
  --red:#dd6673;--gold:#dcc09c;--radius:10px;
  --shadow:0 18px 46px rgba(0,0,0,.28);
  --rz-purple:#aa3fff;--rz-purple-light:#ca94ff;--rz-text:#f1f0f6;
  --rz-muted:#aaa8b7;--rz-surface:#1b1b23;--rz-surface2:#22222c;
  --rz-border:#363440;
}
html{background:#101015}
body,body.public-body,body.admin-body,body.home-page{background:#111116;color:#f1f0f6}
::selection{background:#8030c0;color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid #b369ff;outline-offset:3px
}
/* Consistent header, original logo and footer */
.site-header,body.home-page .site-header{
  background:#141419!important;border-bottom:1px solid #33303c!important;
  box-shadow:0 8px 25px #07070c33
}
.brand-logo-img{width:51px;height:42px;object-fit:contain;filter:drop-shadow(0 0 8px #870aff29)}
.brand-word{font-size:18px;color:#f7f5fa;letter-spacing:.08em}
.brand-word small{color:#bc98d8;letter-spacing:.23em}
.main-nav a,.header-link{color:#c6c3cd}
.main-nav a:hover,.header-link:hover{color:#d5a5ff}
.header-link{border:1px solid #5b406c;background:#231b2e;border-radius:8px;color:#f1e8f8}
.header-link span{color:#b65dff}
.account-pill{border-left:1px solid #43374c;color:#f4eef7}
.account-pill small{color:#b1a7be}
.online-dot{background:#9fdfab}
.site-footer,body.home-page .site-footer{background:#101015!important;border-top:1px solid #383140!important;color:#f5f2f8}
.footer-brand{display:flex;align-items:center;gap:11px;color:#f7f4fb}
.footer-logo{width:43px;height:34px;object-fit:contain;flex-shrink:0}
.footer-brand span{color:#ba8fdb!important}
.footer-inner p,.footer-copy{color:#9791a4}
.footer-links{color:#c8c0ce}
.footer-links a:hover{color:#d5a5ff!important}
.eyebrow,.dark-eye,.mini-label{color:#c18cf3}
.eyebrow i,.dark-eye i{background:#a950f2}
.back-link,.faction-hero .back-link{color:#b7a5ca}
.back-link:hover{color:#e0bcff}
/* Buttons, controls, text hierarchy */
.btn{border-radius:8px;gap:18px}
.btn-primary{background:linear-gradient(125deg,#8525cf,#a735f1);color:#fff;border:1px solid #b15cf2;
  box-shadow:0 8px 24px rgba(119,26,199,.14)}
.btn-primary:hover{background:linear-gradient(125deg,#9c32ea,#bb56fd)}
.btn-outline{border-color:#645573;background:#25212c;color:#eee8f4}
.btn-outline:hover{border-color:#a762d8;background:#31243c}
.btn-dark{background:#29222f;color:#fff;border-color:#5a426b}
.btn-dark:hover{background:#3a2b49}
.btn-quiet{background:#211c29;border-color:#5a4068;color:#eae3f2}
.btn-quiet:hover{border-color:#a75cde;background:#38283f}
.mini-btn{background:#2b2234;border:1px solid #654a7a;color:#d5b7f0;border-radius:6px}
.mini-btn:hover{background:#402b54}
body input:not([type=checkbox]):not([type=hidden]),body select,body textarea,
body .field input,body .field select,body .field textarea{
  background:#14141b;color:#f2eef6;border:1px solid #43404e;border-radius:7px
}
body input:focus,body select:focus,body textarea:focus,
body .field input:focus,body .field select:focus,body .field textarea:focus{
  background:#19151f;border-color:#a857eb;box-shadow:0 0 0 3px rgba(164,67,243,.13)
}
body input::placeholder,body textarea::placeholder{color:#858090;opacity:1}
body select option{background:#191820;color:#eee}
body input[type=checkbox],body input[type=radio]{accent-color:#a343ee}
.field,.form-panel form>label.field{color:#e6e1ef}
.field em{color:#ee91ad}
.field small,.form-overline,.step-count,.step-count b,.section-title>p,.aside-intro,
.security-tip,.small-muted{color:#a29aaa}
.aside-intro strong{color:#e3cff7}
/* Secondary public pages */
.page-pad,.content-page,.status-layout,.application-layout,.faction-detail-layout{color:#f1eff5}
.content-page>p,.faction-detail-layout>div>p,.status-head p{color:#aaa4b6}
.content-page h1,.content-page h2,.page-pad h1{color:#f7f5f8}
.detail-note{background:#221c2c;border-left:3px solid #9e44e4;color:#d3c7dc}
.faction-hero,.faction-illegal.faction-hero,.faction-civil.faction-hero{
  background:radial-gradient(ellipse at 85% 0%,#3e1959 0%,#1e1929 45%,#15141b 90%);
  color:#fff;border-bottom:1px solid #43364b
}
.faction-illegal.faction-hero{background:radial-gradient(ellipse at 85% 0%,#512443,#241822 47%,#15141b 90%)}
.faction-civil.faction-hero{background:radial-gradient(ellipse at 85% 0%,#26374f,#1c1e2b 47%,#15141b 90%)}
.faction-hero p{color:#c2b9c9}
.faction-emblem{background:#221d2b;border:1px solid #72517f;box-shadow:inset 0 0 0 18px #ffffff05}
.faction-emblem span{color:#c075ff}
.faction-emblem small{color:#c9b9d2}
.apply-options,.form-panel,.success-panel,.admin-card,.stat-box,.table-scroll,.filterbar{
  background:#1b1b23;border:1px solid #393642;color:#f2eef7;border-radius:10px;
  box-shadow:0 9px 25px #0002
}
.apply-choice{border-top-color:#3b3743}
.apply-choice p{color:#a8a0ae}
.closed-tag{background:#2c2932;color:#bcb3c2;border-radius:5px}
.form-side-panel,.privacy-note{background:#24202d;border:1px solid #463b4f;border-radius:8px}
.form-side-panel>span{color:#bb86e5}
.form-side-panel small,.privacy-note{color:#b5aabd}
.security-tip span{color:#cc8dff}
.form-header,.question-group{border-color:#443b4c}
.wizard-nav{border-bottom-color:#3e3949}
.wizard-tab{color:#9d95a6}
.wizard-tab b{color:#aaa0b1}
.wizard-tab.is-active{color:#e3c4ff;border-color:#ad55fa}
.wizard-tab.is-active b{color:#c282ff}
.section-title>span,.question-index{color:#c680f8}
.question-body>strong{color:#ebe6f0}
.question-group{border-bottom-color:#413b4a}
.question-group>span{color:#aaa0b4}
.word-counter{color:#9991a5}
.word-counter b{color:#c2acdd}
.word-counter.too-long b,.word-counter.too-short b{color:#ff9b9b}
.wizard-actions{border-top-color:#3f3847}
.step-feedback{color:#f69da9}
.consent-row{color:#d0c4d8}
.consent-row input{accent-color:#a23eef}
.review-summary,.review-summary>div{border-color:#433b4b}
.review-summary span{color:#a596b2}
.form-error,.flash-error{background:#3d202a;border:1px solid #a75b69;color:#ffd7d7;border-radius:7px}
.flash:not(.flash-error){background:#26352b;border-color:#42634d;color:#bde3c4}
.success-panel p{color:#beb2c5}
.success-icon{background:#362448;color:#d7a2ff}
.code-box{background:#15131c;border:1px solid #544162;border-radius:7px}
.code-box span{color:#b7a6c4}
.status-result{border-top-color:#443c4a}
.status-meta small,.status-description{color:#a69aa9}
.result-reason{background:#3b252c;border:1px solid #754855;color:#f0dbe0;border-radius:7px}
.result-note{background:#242033;border:1px solid #544768;color:#d9c9eb;border-radius:7px}
.status-badge{background:#302b36;color:#c6b7d0;border-radius:100px}
.s-new{background:#29344d;color:#bdd5fb}
.s-review{background:#40331e;color:#f0d79c}
.s-interview{background:#372448;color:#d7b5f8}
.s-accepted{background:#1e3d30;color:#a0dfae}
.s-rejected{background:#49262d;color:#feb9c1}
.install-wrap p,.login-panel>p{color:#b8adbf}
.login-aside{background:radial-gradient(circle at 80% 18%,#472363,#221a2b 55%,#1a1922);border:1px solid #483954;border-radius:10px}
.login-aside p{color:#c9bfd1}
.login-aside h1 em{color:#ca8fff}
.login-art{right:25px;bottom:8px;font-size:0;opacity:.26}
.login-art img{width:280px;height:230px;object-fit:contain;filter:drop-shadow(0 8px 32px #a130fd75)}
/* Admin — no white tables or panels */
.admin-body{background:#111116}
.admin-heading p,.stat-box small{color:#a59bab}
.stat-box span,.stat-box b{color:#eee9f3}
.stat-box b{letter-spacing:-.07em}
.recruitment-banner{border-radius:10px;background:linear-gradient(100deg,#25202e,#2a1a3c);border:1px solid #553c65}
.recruitment-banner .mini-label{color:#ca8fff}
.recruitment-banner p{color:#c3b6cf}
.recruitment-banner .btn-outline{border-color:#77518f;color:#ece0f6}
.table-counter{background:#332541;color:#d5b7ef;border-radius:5px}
.filterbar label{color:#bfb0c7}
.table-scroll{background:#191921}
.admin-table th{background:#25232d;border-bottom:1px solid #45404c;color:#c5b7cd}
.admin-table td{background:#1b1b23;border-bottom:1px solid #35323f;color:#c7bbc9}
.admin-table tbody tr:hover td{background:#24212d}
.admin-table td strong{color:#f2ecf5}
.admin-table td small{color:#a59ba9}
.table-link,.admin-item>span{color:#cb8fff}
.table-link:hover{color:#e5baff}
.table-empty{color:#aaa1b3!important}
.admin-item,.user-row{border-bottom:1px solid #403b49}
.admin-item small,.user-row small{color:#a9a0af}
.toggle-row{background:#23212b;border:1px solid #494150;border-radius:8px}
.toggle-row input{accent-color:#aa41f2}
.toggle-row small{color:#a99eae}
.divider-line{background:#45404d}
.info-grid span,.answer-card span{color:#b98ae2}
.answer-card{border-bottom-color:#423b4b}
.answer-card p{background:#14141b;color:#d7cadc;border:1px solid #34313c;border-radius:7px}
.review-head p{color:#aca3b1}
.last-edited{border-top-color:#403949}
.last-edited span,.last-edited small{color:#b3a6bc}
/* The existing faction-logo manager follows the same dark surfaces. */
.logo-admin-section{background:#24202d;border:1px solid #49404f;border-radius:8px}
.logo-preview{background:#18141e;border:1px dashed #6c527f;border-radius:8px}
.logo-preview .logo-placeholder,.admin-logo span{color:#d4a0ff}
.logo-preview small{color:#a699b5}
.logo-admin-fields input[type=file]{background:#17141d}
.logo-remove{color:#ceb5df}
.logo-remove input{accent-color:#ae4ef0}
.admin-logo{background:#2d223b;border:1px solid #544568;border-radius:6px}
/* Home page — unify previously-red calls to action with the user's purple logo. */
body.home-page .rz-hero{background:#121219;border-color:#3c3145}
body.home-page .rz-hero h1 strong,body.home-page .rz-section-title h2 em{color:#ba69fb}
body.home-page .rz-hero-kicker,body.home-page .rz-label{color:#c78afa}
body.home-page .rz-action-primary{background:linear-gradient(120deg,#7c20c6,#a139ef);border-color:#b45ff5;color:#fff;box-shadow:0 12px 29px #660a9e35}
body.home-page .rz-action-primary:hover{background:linear-gradient(120deg,#9330dd,#bc63ff)}
body.home-page .rz-action-secondary{border-color:#625273;color:#ede5f5;background:#211c28}
body.home-page .rz-action-secondary:hover{border-color:#a266d1;background:#31243c}
body.home-page .rz-hero-brand{background:radial-gradient(ellipse at 50% 52%,#35174f 0%,#201829 55%,#15141c 96%);border-color:#45344e}
body.home-page .rz-brand-corner{color:#c7a8d7}
body.home-page .rz-brand-emblem img{height:190px;width:260px;object-fit:contain;filter:drop-shadow(0 10px 30px #b13aff48)}
body.home-page .rz-brand-emblem>span{color:#f4eff9;letter-spacing:.07em}
body.home-page .rz-brand-emblem>small{color:#c3a3da}
body.home-page .rz-hero-brand:before,body.home-page .rz-hero-brand:after{border-color:#763e9c77}
body.home-page .rz-live-dot{background:#a764fd}
body.home-page .rz-status-band,body.home-page .rz-process{background:#19171f;border-color:#373040}
body.home-page .rz-status-item{border-color:#38303f}
body.home-page .rz-status-item strong{color:#f4f0f6}
body.home-page .rz-status-link{color:#eadff4;border-color:#3d3446}
body.home-page .rz-status-link:hover{background:#292134}
body.home-page .rz-factions{background:#111116}
body.home-page .filter-pill{background:#212028;border-color:#484052;color:#d0c7d6}
body.home-page .filter-pill.active,body.home-page .filter-pill:hover{background:#7224ae;border-color:#b55bfa;color:#fff}
body.home-page .filter-pill.active span,body.home-page .filter-pill:hover span{color:#fff}
body.home-page .rz-search{background:#1e1b25;border-color:#554760;color:#e0d0e9}
body.home-page .rz-search:focus-within{border-color:#b369ff}
body.home-page .rz-search input[type=search]{background:transparent;border:0;box-shadow:none}
body.home-page .rz-fc-visual{background:radial-gradient(ellipse at 50% 50%,#352548 0%,#24202f 48%,#1d1c25 84%)}
body.home-page .faction-illegal .rz-fc-visual{background:radial-gradient(ellipse at 50% 50%,#493044 0%,#30212e 49%,#201c25 90%)}
body.home-page .faction-civil .rz-fc-visual{background:radial-gradient(ellipse at 50% 50%,#30364c 0%,#222535 50%,#1c1d27 90%)}
body.home-page .rz-fc-logo-wrap{background:#17131e9c;border:1px solid #815b9a66}
body.home-page .rz-fc-emblem-link:hover .rz-fc-logo-wrap{border-color:#c27cf3}
body.home-page .rz-fc-type{color:#c4a1dd}
body.home-page .rz-fc-details h3 a:hover{color:#d5a3ff}
body.home-page .rz-fc-btn-leader{background:#392349;border:1px solid #7d4b9d;color:#dbb4fb}
body.home-page .rz-fc-btn-leader:hover{background:#513163}
body.home-page .rz-fc-btn-muted{color:#99919e;background:#22202a}
body.home-page .rz-no-results,body.home-page .rz-empty{background:#1c1a22;border-color:#5a4467;color:#d3c5df}
body.home-page .rz-empty-sign{display:flex;align-items:center;justify-content:center}
body.home-page .rz-empty-sign img{object-fit:contain}
body.home-page .rz-process-steps>div{border-color:#46384c}
body.home-page .rz-process-steps>div>span{color:#c37cff}
body.home-page .rz-last-cta p{color:#aaa1b3}
body.home-page .footer-brand span{color:#bf8fe4!important}
/* Responsive navigation: allow visible account identity on tablet instead of hiding it. */
@media(max-width:1120px){.account-pill{display:grid}.header-inner{gap:13px}.header-actions{gap:10px}}
@media(max-width:800px){
  .brand-logo-img{width:44px;height:37px}
  .brand-word{font-size:15px}
  .main-nav{display:flex;gap:12px;order:3;width:100%;margin:0;padding:0 0 12px;justify-content:space-between;flex-wrap:wrap}
  .main-nav a{font-size:11px}
  .header-inner{padding-top:12px;row-gap:8px}
  .header-actions{margin-left:auto!important}
  .account-pill{font-size:11px}
  .footer-inner{align-items:flex-start}
  body.home-page .rz-brand-emblem img{height:108px;width:150px}
}
@media(max-width:530px){
  .brand-word{font-size:13px}
  .brand-logo-img{width:38px;height:33px}
  .account-pill{display:none}
  .header-link{font-size:10px;padding:8px 9px}
  .main-nav{gap:8px}
  .main-nav a{font-size:10px}
  .footer-brand{font-size:17px}
  .footer-logo{width:34px;height:30px}
  body.home-page .rz-brand-emblem img{height:78px;width:106px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Brand finishing touches */
body.home-page{--rize-red:#ad55f1;--rize-line:#42354b;--rize-surface:#1b1b23;--rize-border:#44394e}
body.home-page .brand-logo-img{width:51px;height:42px}
body.home-page .brand-word small{color:#c38de9}
body.home-page .header-link{background:#241a30;border-color:#764c90;color:#f7f1fb}
body.home-page .header-link:hover{background:#392448;border-color:#b56beb}
body.home-page .header-link span{color:#ca85ff}
body.home-page a:focus-visible,body.home-page button:focus-visible,body.home-page input:focus-visible{outline-color:#bf76f9}
.rz-kicker-line{background:#ad55f1}
body.home-page .rz-brand-emblem>small{color:#b57de1}
body.home-page .rz-status-link span{color:#bc76f3}
body.home-page .rz-empty-sign span{color:#bf7bf1}
body.home-page .rz-fc-details h3 a:hover{color:#d5a3ff}
body.home-page .footer-links a:hover{color:#d5a3ff}
@media(max-width:530px){body.home-page .brand-logo-img{width:40px;height:34px}}

/* RIZE Facțiuni v1.4 — question builder */
.question-editor-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;margin:18px 0 24px;border:1px solid #5b3a71;background:linear-gradient(120deg,#2c2036,#1c1a23);border-radius:10px}
.question-editor-cta h2{margin:7px 0 9px}.question-editor-cta p{max-width:640px;margin:0}
.quiz-switch{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.quiz-switch-tab{display:flex;gap:12px;align-items:center;padding:14px 20px;background:#1e1c25;border:1px solid #463a53;border-radius:8px;text-decoration:none;color:#c8bfd4;font-weight:650}
.quiz-switch-tab.is-active{background:#5a247d;border-color:#b36aea;color:#fff}
.quiz-switch-tab span{background:#ffffff13;border-radius:5px;padding:3px 8px;font-size:.84rem}
.question-builder{padding:28px}.question-builder-header{display:flex;justify-content:space-between;align-items:start;gap:28px;margin-bottom:30px}
.question-builder-header h2{margin:8px 0 10px}.question-builder-header p{max-width:680px;margin:0}
.question-total{border:1px solid #53415f;background:#292132;border-radius:9px;padding:14px 24px;text-align:center;min-width:120px}
.question-total strong{font-size:2rem;display:block;color:#d49cff}.question-total span{font-size:.67rem;letter-spacing:.12em;color:#c2b2cc}
.question-builder-list{display:grid;gap:16px}
.builder-row{background:#16141d;border:1px solid #42344e;border-radius:9px;padding:20px 22px}
.builder-row-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
.builder-number{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800;color:#bb88e2}
.builder-actions{display:flex;align-items:center;gap:6px}.builder-actions button{background:#292430;border:1px solid #51425d;color:#ded1e8;padding:7px 11px;border-radius:6px;cursor:pointer}
.builder-actions button:hover:not(:disabled){border-color:#ad5ae5;background:#3e2a4e}.builder-actions button:disabled{opacity:.35;cursor:default}
.builder-actions .builder-delete{color:#ffb5bd;border-color:#673f49}.builder-options{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:14px;margin:16px 0 12px}
.builder-required{display:inline-flex;align-items:center;gap:9px;color:#d7cadf;font-weight:650;font-size:.88rem;cursor:pointer}
.builder-empty{border:1px dashed #654676;background:#24202c;border-radius:9px;padding:34px;text-align:center;color:#d7c8e0}
.builder-empty strong{font-size:1.2rem}.builder-empty p{color:#b9a4c5}
.builder-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:22px 0 16px}
@media(max-width:800px){.question-builder-header,.question-editor-cta{flex-direction:column;align-items:stretch}.builder-options{grid-template-columns:1fr 1fr}.builder-options .field:first-child{grid-column:span 2}.question-builder{padding:17px}.builder-row{padding:16px}.builder-toolbar{flex-wrap:wrap}.builder-toolbar .btn{flex:1}}
@media(max-width:500px){.builder-row-top{align-items:start}.builder-actions{flex-wrap:wrap;justify-content:end}.builder-actions button{padding:6px 9px}}


/* RIZE Facțiuni V1.5 — no-question and closed-recruitment screens */
body.public-body:has(.availability-page){background:#101015}
.availability-page{min-height:calc(100vh - 215px);padding:64px 0 100px;display:flex;align-items:center}
.availability-panel{width:100%;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);overflow:hidden;background:linear-gradient(120deg,#1c1a23 0%,#181720 58%,#1e1728 100%);border:1px solid #463a50;border-radius:16px;box-shadow:0 25px 76px #05030866;isolation:isolate}
.availability-copy{padding:clamp(32px,5vw,70px);min-width:0}
.availability-back{display:inline-flex;gap:12px;align-items:center;margin-bottom:52px;font-size:13px;color:#aca3b8;font-weight:650;transition:color .18s}
.availability-back:hover{color:#e8c6ff}
.availability-back span{font-size:20px;line-height:1;color:#c68cff}
.availability-kicker{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:.22em;color:#c796ea;margin-bottom:24px}
.availability-kicker-dot{width:7px;height:7px;border-radius:50%;background:#aa57e4;box-shadow:0 0 0 4px #9e46dc22}
.availability-status{display:inline-flex;align-items:center;gap:9px;border:1px solid #6d4983;background:#2b2037;border-radius:999px;padding:9px 14px;color:#e5c5ff;letter-spacing:.11em;font-size:10px;font-weight:800;margin-bottom:26px}
.availability-status-icon{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#633589;color:#f7e4ff;font-size:13px;font-weight:800}
.availability-closed .availability-status{border-color:#755157;background:#33232b;color:#f4c0c6}
.availability-closed .availability-status-icon{background:#7d3b49;color:#ffdadf}
.availability-panel h1{margin:0;color:#fbf9ff;font-size:clamp(36px,4.5vw,64px);line-height:1.12;letter-spacing:-.045em;font-weight:800}
.availability-panel h1 em{display:inline-block;margin-top:2px;font-family:inherit;font-style:normal;letter-spacing:-.045em;color:#c479fc;font-weight:800}
.availability-closed h1 em{color:#e7a8c0}
.availability-description{color:#bcb4c6;max-width:540px;margin-top:24px;font-size:15px;line-height:1.85}
.availability-description strong{color:#f5eaff;font-weight:700}
.availability-details{display:flex;flex-wrap:wrap;gap:22px 42px;margin-top:34px;padding-top:26px;border-top:1px solid #3b3345}
.availability-details>div{display:grid;gap:5px;min-width:110px;max-width:100%}
.availability-details span{color:#92879d;font-size:10px;letter-spacing:.13em;font-weight:750}
.availability-details strong{color:#f1eaf7;font-size:14px;font-weight:720;overflow-wrap:anywhere}
.availability-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.availability-actions .btn{min-height:49px;padding:13px 17px;font-size:12px;gap:16px}
.availability-visual{min-height:500px;position:relative;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:42px 38px;background:radial-gradient(circle at 52% 38%,#50256b 0%,#321a47 30%,#201a2c 68%,#1c1824 100%);border-left:1px solid #453451;overflow:hidden}
.availability-visual-pattern{position:absolute;inset:0;pointer-events:none;opacity:.5;background:repeating-linear-gradient(133deg,transparent 0px,transparent 44px,#a665cb16 45px,#a665cb16 46px);mask-image:linear-gradient(to bottom,#000,transparent 80%)}
.availability-visual-eyebrow{z-index:1;align-self:flex-end;max-width:100%;text-align:right;color:#cba6df;letter-spacing:.24em;font-size:10px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.availability-visual-mark{width:min(90%,300px);aspect-ratio:1;display:grid;place-items:center;border:1px solid #c17aff29;border-radius:50%;background:radial-gradient(circle,#af4bff25 0%,#a343da0c 56%,transparent 70%);box-shadow:0 0 0 19px #a947e009,0 0 0 55px #a947e006;z-index:1;padding:34px}
.availability-visual-mark img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 18px 26px #05010a59)}
.availability-visual-mark.has-logo img{max-width:100%;max-height:100%}
.availability-visual-fallback{font-size:clamp(72px,10vw,126px);font-weight:900;line-height:1;letter-spacing:-.09em;color:#d084ff;text-shadow:0 18px 26px #05010a59}
.availability-visual-bottom{z-index:1;align-self:stretch;display:flex;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid #8859a144;color:#d3b4e7;font-size:10px;letter-spacing:.14em}
.availability-visual-bottom strong{color:#f0dfff}
@media(max-width:900px){.availability-panel{grid-template-columns:1fr}.availability-page{padding:42px 0 70px}.availability-copy{padding:36px}.availability-back{margin-bottom:30px}.availability-visual{min-height:190px;padding:20px 30px;border-left:0;border-top:1px solid #453451;flex-direction:row;align-items:center}.availability-visual-mark{width:145px;aspect-ratio:1;box-shadow:none;padding:16px}.availability-visual-eyebrow{align-self:center}.availability-visual-bottom{display:none}}
@media(max-width:530px){.availability-page{padding:25px 0 45px;min-height:0}.availability-panel{border-radius:12px}.availability-copy{padding:27px 22px 32px}.availability-back{margin-bottom:32px}.availability-kicker{letter-spacing:.12em;font-size:9px}.availability-status{font-size:9px;padding:8px 11px}.availability-panel h1{font-size:clamp(32px,10vw,43px)}.availability-description{font-size:13px}.availability-details{gap:18px;padding-top:20px}.availability-actions{display:grid}.availability-actions .btn{width:100%;justify-content:space-between}.availability-visual{min-height:110px;padding:15px 25px}.availability-visual-mark{width:84px;padding:10px}.availability-visual-eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.availability-back{transition:none}}


/* RIZE Facțiuni V1.7 — questionnaire categories inside step 02 */
.question-step-header{display:grid;gap:12px;margin:-8px 0 24px;padding:18px 20px;background:#171720;border:1px solid #3b3744;border-radius:10px}
.question-step-kicker{font-size:10px;font-weight:800;letter-spacing:.18em;color:#b98ae2}
.question-step-meta{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}
.question-step-stats{display:flex;flex-direction:column;gap:7px;min-width:0}
.question-step-meta strong{font-size:clamp(15px,2vw,19px);line-height:1.25;color:#f6f1fb}
.question-step-stats small{font-size:12px;font-weight:750;color:#c78ef7}
.question-step-meta span{font-size:13px;font-weight:700;color:#ddd2e7}
.question-step-bar{height:7px;border-radius:999px;background:#2a2732;overflow:hidden}
.question-step-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8d31de,#bc63ff);transition:width .2s ease}
.question-category{display:none}
.question-category.is-visible{display:block}
.question-group{display:flex;justify-content:space-between;align-items:center;gap:12px}
.question-group small{font-size:10px;font-weight:800;letter-spacing:.13em;color:#9d93ac;text-transform:uppercase}
@media(max-width:640px){.question-step-header{padding:16px}.question-step-meta strong{font-size:20px}.question-step-meta span{font-size:12px}.question-group{align-items:flex-start;flex-direction:column}}

/* V2.0 — unread, scheduling and security */
.header-notifications{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #594367;border-radius:7px;background:#251c30;color:#e3c9f5;font-size:11px;font-weight:750;white-space:nowrap}
.header-notifications b{background:#8e39d4;color:white;border-radius:99px;min-width:20px;min-height:20px;display:grid;place-items:center;padding:0 5px;font-size:10px}
.header-notifications:hover{background:#362744;color:#fff}
.new-app-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#201b2a;border:1px solid #4b395a;border-radius:10px;padding:20px 26px;margin:24px 0}
.new-app-banner h3{margin:8px 0;color:#f2edfa;font-size:22px}
.new-app-banner p{font-size:12px;color:#a99eaf;margin:0;max-width:670px}
.new-app-banner .btn{white-space:nowrap}
.unread-dot{display:inline-block;background:#7341a5;color:#fff;padding:3px 7px;border-radius:99px;font-size:9px;margin-left:8px;vertical-align:middle}
.toggle-new-filter{display:flex;align-items:center;gap:8px;font-size:11px;color:#c4afd2;white-space:nowrap}
.toggle-new-filter input{accent-color:#a548f2}
.schedule-editor{margin:30px 0;padding:24px;background:#211d2a;border:1px solid #44374f;border-radius:10px}
.schedule-editor h2{font-size:24px;margin:11px 0}
.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.schedule-box{border:1px solid #4d4159;border-radius:9px;padding:18px 20px;min-width:0}
.schedule-box legend{padding:0 8px;color:#d4adf2;font-size:13px;font-weight:750}
.schedule-box .field{margin:7px 0 14px}
.schedule-box small{display:block;color:#aba1b7;line-height:1.5}
.history-list{display:grid;gap:10px;margin:16px 0}
.history-item{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 14px;border:1px solid #463b4e;background:#221e29;border-radius:8px;flex-wrap:wrap}
.history-item>div{display:grid;gap:5px}.history-item small{color:#aca0ba}
.privacy-anon{border:1px solid #745767;background:#2c202b;border-radius:8px;padding:20px;margin-top:30px}.privacy-anon h3{margin:0 0 8px}.privacy-anon button{margin-top:8px}
.security-card{padding:30px;margin-bottom:22px}.security-card h2{font-size:23px;margin:0 0 18px}.security-checks{display:grid;gap:10px}
.security-check{display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #403844;padding:12px 0}.security-check div{display:grid;gap:6px}.security-check small{color:#aca3b2;font-size:12px;line-height:1.6}.security-card code{color:#d3b7ff}
@media(max-width:900px){.schedule-grid{grid-template-columns:1fr}.new-app-banner{flex-direction:column;align-items:stretch}.header-notifications{padding:6px 8px}.security-card{padding:18px}}

.availability-timing{display:inline-flex;color:#e7c4ff;border:1px solid #5d4372;background:#30213b;border-radius:7px;padding:10px 14px;font-size:12px;line-height:1.5;margin-top:14px}
.closed-tag{white-space:normal;text-align:center;max-width:240px;line-height:1.4}

/* V2.1 – public schedule: concise on cards, expanded on faction details. */
.rz-fc-schedule{margin:0 21px 0;padding:16px 0 17px;border-top:1px solid #393340;color:#d1c9da}
.rz-fc-schedule-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:11px;color:#ba92d5;font-size:9px;font-weight:850;letter-spacing:.11em}
.rz-fc-schedule-heading span:last-child{color:#898092;font-size:9px;font-weight:700}
.rz-fc-schedule-row{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px solid #ffffff0d}
.rz-fc-schedule-row:first-of-type{border-top:0}
.rz-fc-schedule-role{align-self:start;display:inline-block;border-radius:4px;padding:4px 5px;background:#362641;color:#ddb5fc;font-size:10px;font-weight:800;text-align:center}
.rz-fc-schedule-times{display:grid;gap:3px;min-width:0;font-size:11px;line-height:1.5;color:#b8b1c0}
.rz-fc-schedule-times strong{font-weight:720;color:#f0e6f7}
.role-schedule{margin-top:16px;padding:15px 16px;background:#211d2a;border:1px solid #493751;border-radius:8px;max-width:440px}
.role-schedule-status{display:block;margin-bottom:11px;color:#d6b4f2;font-size:11px;font-weight:800;letter-spacing:.02em}
.role-schedule-active .role-schedule-status{color:#9fdfac}
.role-schedule-upcoming .role-schedule-status{color:#e6ca93}
.role-schedule-closed,.role-schedule-ended{background:#221f27;border-color:#3b3542}
.role-schedule-closed .role-schedule-status,.role-schedule-ended .role-schedule-status{color:#ad9dad;margin-bottom:0}
.role-schedule-ended .role-schedule-status{margin-bottom:11px}
.role-schedule-dates{margin:0;display:grid;gap:9px}
.role-schedule-dates>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px;align-items:baseline}
.role-schedule-dates dt{font-size:11px;color:#ada1b8}
.role-schedule-dates dd{margin:0;font-size:12px;color:#f0eaf5;font-weight:680;overflow-wrap:anywhere}
.role-schedule small{display:block;margin-top:11px;color:#8f859a;font-size:10px}
/* Prevent schedule blocks from shrinking the role action button. */
.apply-choice>div:first-child{min-width:0;flex:1}
@media(max-width:530px){.rz-fc-schedule{margin:0 18px}.rz-fc-schedule-heading{font-size:9px}.rz-fc-schedule-row{grid-template-columns:51px minmax(0,1fr)}.role-schedule{padding:14px}.role-schedule-dates>div{grid-template-columns:100px minmax(0,1fr)}}

/* V2.2 — wider, more legible recruitment calendar in the faction details */
.faction-detail-layout .apply-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:17px 20px;align-items:start}
.faction-detail-layout .apply-choice>div:first-child{min-width:0;grid-column:1}
.faction-detail-layout .apply-choice>.btn,.faction-detail-layout .apply-choice>.closed-tag{grid-column:2;grid-row:1;align-self:start}
.faction-detail-layout .apply-choice>.role-schedule{grid-column:1/-1;grid-row:2;max-width:none;width:100%;margin:4px 0 0;padding:22px 24px;border-radius:10px;background:linear-gradient(125deg,#251e30,#211c2a);border-color:#614a70}
.faction-detail-layout .role-schedule-status{font-size:13px;margin-bottom:17px}
.faction-detail-layout .role-schedule-dates{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:12px}
.faction-detail-layout .role-schedule-dates>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}
.faction-detail-layout .role-schedule-dates dt{font-size:12px;color:#bdb0c9}
.faction-detail-layout .role-schedule-dates dd{font-size:15px;line-height:1.35;font-weight:780;color:#fff}
.faction-detail-layout .role-schedule small{font-size:11px;margin-top:17px}
@media(max-width:760px){
 .faction-detail-layout .apply-choice{grid-template-columns:minmax(0,1fr);gap:15px}
 .faction-detail-layout .apply-choice>.btn,.faction-detail-layout .apply-choice>.closed-tag{grid-column:1;grid-row:3;justify-self:stretch;text-align:center}
 .faction-detail-layout .apply-choice>.role-schedule{grid-column:1;grid-row:2;margin:0;padding:20px}
 .faction-detail-layout .role-schedule-dates{grid-template-columns:1fr;gap:14px}
 .faction-detail-layout .role-schedule-dates>div{gap:5px}
}

/* V2.3 — recruitment management for each faction leader */
.leader-recruitment{margin:0 0 34px;padding:30px 33px;scroll-margin-top:35px}
.leader-recruitment-top{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:25px}
.leader-recruitment-top h2{margin:8px 0 11px;font-size:clamp(25px,2.4vw,34px)}
.leader-recruitment-top h2 em{font-style:normal;color:#c786fb}
.leader-recruitment-top p{margin:0;line-height:1.7}
.leader-recruitment-top p strong{color:#f7eaff}
.leader-recruitment-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #625468;background:#292530;border-radius:999px;padding:10px 15px;color:#e5cedc;font-size:12px;font-weight:750;white-space:nowrap}
.leader-recruitment-pill i{width:8px;height:8px;background:#ca8d9e;border-radius:50%}
.leader-recruitment-pill.is-open{background:#1d372e;border-color:#37694d;color:#adf5cd}
.leader-recruitment-pill.is-open i{background:#72e5a4}
.leader-recruitment-warning{padding:16px 18px;border:1px solid #8f704b;background:#302719;border-radius:9px;color:#f5dab4;font-size:13px;line-height:1.7;margin-bottom:24px}
.leader-recruitment-actions{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;border:1px solid #494052;border-radius:10px;background:#201c27;padding:20px 22px;margin-bottom:27px}
.leader-recruitment-actions>div:first-child{display:grid;gap:7px}
.leader-recruitment-label{font-size:10px;color:#bc9bd5;letter-spacing:.16em;font-weight:850}
.leader-recruitment-actions strong{font-size:20px;color:#f3edf8}
.leader-recruitment-actions small{color:#aaa1b6;line-height:1.5;font-size:12px}
.leader-recruitment-buttons{display:flex;gap:10px;flex-wrap:wrap}
.leader-recruitment-buttons form{margin:0}
.leader-recruitment-buttons .btn{min-height:44px;white-space:nowrap;font-size:12px}
.leader-schedule-form{border-top:1px solid #453c4c;padding-top:25px}
.leader-schedule-title h3{font-size:18px;margin:0 0 6px}
.leader-schedule-title p{line-height:1.65;margin:0 0 18px}
.leader-schedule-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:15px;align-items:end}
.leader-schedule-fields .field{min-width:0;margin:0}
.leader-schedule-fields input{min-width:0}
.leader-schedule-fields button{min-height:52px;font-size:12px;white-space:nowrap}
@media(max-width:1000px){.leader-schedule-fields{grid-template-columns:1fr 1fr}.leader-schedule-fields button{grid-column:1/-1}}
@media(max-width:650px){.leader-recruitment{padding:22px 18px}.leader-recruitment-top{flex-direction:column;gap:10px}.leader-recruitment-actions{padding:18px}.leader-recruitment-buttons{width:100%}.leader-recruitment-buttons form{flex:1}.leader-recruitment-buttons .btn{width:100%;justify-content:center}.leader-schedule-fields{grid-template-columns:minmax(0,1fr)}.leader-schedule-fields button{grid-column:1}}
