@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{
  --bg:#090b0e;--surface:#111216;--surface-2:#17191d;--field:#121318;
  --text:#f2eee8;--muted:#999698;--soft:#7b797d;--line:rgba(204,187,166,.14);
  --gold:#c5a47c;--gold-soft:#d9bf99;--red:#a43b49;--green:#91bd9e;
  --serif: 'Cinzel', Georgia, 'Times New Roman', serif;
  --sans:'DM Sans', Inter, 'Segoe UI', Arial, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.6}
body::before{content:'';position:fixed;pointer-events:none;inset:0;opacity:.13;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.23'/%3E%3C/svg%3E")}
::selection{background:rgba(197,164,124,.32);color:#fff}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:wait;opacity:.7}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.site-shell{max-width:1800px;margin:auto;overflow:hidden}
.topbar{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1320px)/2));background:#090b0e;position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:12px}
.brand-symbol{width:39px;height:39px}
.brand span{display:flex;flex-direction:column;line-height:1.2}
.brand strong{font:700 19px var(--serif);letter-spacing:.1em;color:var(--gold-soft)}
.brand small{font-size:8px;letter-spacing:.22em;color:#aaa5a0;margin-top:4px}
.top-links{display:flex;align-items:center;gap:30px}
.status-live{display:flex;align-items:center;gap:10px;color:#c5b2a1;font-size:10px;letter-spacing:.2em;font-weight:700}
.status-live i{width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 13px #c74d5d}
.nav-link{color:var(--gold-soft);font-size:11px;letter-spacing:.13em;font-weight:700}
.nav-link:hover{color:white}.nav-button{background:none;border:0}.inline-form{margin:0}
.hero{min-height:580px;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse 500px 340px at 50% 50%,rgba(121,53,60,.13),transparent 80%),radial-gradient(ellipse 800px 300px at 50% 100%,rgba(130,84,44,.065),transparent 85%),#0b0d10;border-bottom:1px solid var(--line)}
.hero::before{position:absolute;content:'';inset:0;opacity:.5;pointer-events:none;background:linear-gradient(90deg,transparent 0 49.94%,rgba(197,164,124,.11) 50%,transparent 50.06%),repeating-linear-gradient(0deg,transparent 0 79px,rgba(197,164,124,.024) 80px),repeating-linear-gradient(90deg,transparent 0 79px,rgba(197,164,124,.024) 80px)}
.hero::after{position:absolute;content:'';height:520px;width:520px;border:1px solid rgba(197,164,124,.085);transform:rotate(45deg);pointer-events:none}
.hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;padding:54px 20px 58px}
.hero-emblem{width:91px;height:91px;margin-bottom:18px;position:relative;filter:drop-shadow(0 0 28px rgba(190,151,105,.16))}
.hero-emblem img{display:block;width:100%;height:100%}
.microheading{font-size:10px;color:var(--gold);letter-spacing:.35em;font-weight:700;display:flex;align-items:center;gap:15px}
.wing{width:35px;height:1px;background:var(--gold);opacity:.55}
h1,h2,h3,p{margin-top:0}
.hero h1{margin:14px 0 0;font:500 clamp(41px,5.7vw,78px)/1.2 var(--serif);letter-spacing:.045em;max-width:1100px}
.hero h1 em,.form-intro h2 em,.section-heading h3 em,.dashboard-head h1 em,.result-card h1 em,.decision-card h2 em{font-weight:400;color:var(--gold);font-style:normal}
.hero-latin{margin:16px 0 0;color:#8a7367;font:400 11px var(--serif);letter-spacing:.48em}
.hero-rule{width:72px;height:1px;background:var(--gold);opacity:.7;margin:28px auto 22px}
.hero-description{max-width:580px;color:#b6afb0;font-size:14px;line-height:1.9;margin-bottom:30px}
.hero-scroll{font-size:10px;color:var(--gold-soft);letter-spacing:.17em;font-weight:700;border:1px solid rgba(197,164,124,.36);padding:13px 20px;display:flex;gap:30px;transition:all .2s ease}
.hero-scroll span{font-size:17px;line-height:15px}.hero-scroll:hover{background:rgba(197,164,124,.1);border-color:var(--gold)}
.hero-left,.hero-right{position:absolute;top:48%;z-index:3;color:#676164;font-size:10px;letter-spacing:.26em;writing-mode:vertical-rl;font-weight:700}
.hero-left{left:32px;transform:rotate(180deg)}.hero-left span{color:var(--gold)}.hero-right{right:32px}
.hero-ornament{position:absolute;bottom:0;width:100%;height:140px;opacity:.18;pointer-events:none;background:linear-gradient(0deg,#050506,transparent),linear-gradient(45deg,transparent 48%,var(--gold) 48.4%,var(--gold) 49%,transparent 49.4%) center bottom/60px 60px repeat-x;mask-image:linear-gradient(to top,#000,transparent 80%)}
.form-wrap{max-width:940px;margin:0 auto;padding:90px 28px 110px}
.form-intro{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:34px}
.eyebrow{display:flex;gap:12px;align-items:center;font-size:10px;font-weight:700;color:var(--gold);letter-spacing:.21em;text-transform:uppercase}
.eyebrow-line{height:1px;width:30px;background:var(--gold);opacity:.65}
.form-intro h2{font:500 clamp(28px,3.5vw,42px)/1.35 var(--serif);margin:13px 0 11px}
.form-intro p{font-size:13px;color:var(--muted);margin:0}
.progress-card{border:1px solid var(--line);background:rgba(17,18,22,.75);width:250px;flex-shrink:0;padding:16px 17px 13px}
.progress-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;font-size:9px;letter-spacing:.12em;color:#b7b1ae;font-weight:700}
.progress-row strong{font-size:15px;color:var(--gold);letter-spacing:0}
.progress-rail{height:3px;background:#29272a;border-radius:5px;overflow:hidden}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#936948,var(--gold));transition:width .25s ease}
.progress-card small{display:block;margin-top:12px;font-size:10px;color:var(--soft)}
.form-section{background:linear-gradient(130deg,rgba(29,27,29,.76),rgba(16,17,20,.93) 45%);border:1px solid rgba(199,174,139,.17);padding:34px 38px 40px;position:relative}
.form-section::before,.form-section::after{position:absolute;content:'';border-color:var(--gold);opacity:.6;width:20px;height:20px;pointer-events:none}
.form-section::before{top:-1px;left:-1px;border-top:1px solid;border-left:1px solid}.form-section::after{right:-1px;bottom:-1px;border-right:1px solid;border-bottom:1px solid}
.section-heading{display:flex;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:27px;gap:21px}
.section-number{font:400 29px var(--serif);color:var(--gold);letter-spacing:-.03em;flex-shrink:0;line-height:1.35}
.section-number span{font:500 11px var(--sans);color:#78716d;letter-spacing:.02em;margin-left:4px}
.section-heading-body{flex:1}
.section-caption{font-size:9px;letter-spacing:.19em;color:#b29a81;font-weight:700}
.section-heading h3{font:500 28px/1.3 var(--serif);margin:8px 0 6px}
.section-heading p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}
.section-symbol{font:400 30px var(--serif);color:#8b6b51;opacity:.7}
.fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 22px}
.form-field{min-width:0}.form-field.full{grid-column:1/-1}
.form-field label:not(.choice),.form-field legend{display:block;font-size:12px;font-weight:600;letter-spacing:.01em;color:#e1dcd9;margin-bottom:10px;padding:0}
.required{color:var(--gold)}
.form-field input:not([type='radio']),.form-field textarea{width:100%;color:#f3f0eb;background:var(--field);border:1px solid #303035;border-radius:3px;padding:13px 14px;outline:none;transition:border-color .17s,box-shadow .17s;font-size:13px}
.form-field textarea{min-height:86px;resize:vertical;display:block;line-height:1.7}
.form-field input:not([type='radio'])::placeholder,.form-field textarea::placeholder{color:#6b686d}
.form-field input:not([type='radio']):focus,.form-field textarea:focus{border-color:#b49776;box-shadow:0 0 0 3px rgba(197,164,124,.09)}
.form-field input[type=number]{appearance:textfield;-moz-appearance:textfield}
.form-field input[type=number]::-webkit-inner-spin-button,.form-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.radio-field{border:0;margin:0;padding:0;min-width:0}
.choice-grid{display:grid;gap:12px}.choice-three{grid-template-columns:repeat(3,1fr)}.choice-two{grid-template-columns:repeat(2,1fr)}
.choice{position:relative;display:flex;align-items:center;gap:12px;min-height:49px;padding:12px 16px;background:#121318;border:1px solid #303035;border-radius:3px;font-size:12px;color:#c6c0bf;cursor:pointer;transition:all .17s}
.choice:hover{border-color:#8e7965}
.choice input{position:absolute;opacity:0;width:1px;height:1px;top:50%;left:15px}
.choice-circle{width:16px;height:16px;border:1px solid #777174;display:inline-flex;border-radius:50%;align-items:center;justify-content:center;flex-shrink:0}
.choice-circle::after{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);transform:scale(0);transition:transform .15s}
.choice:has(input:checked){background:#24201e;border-color:var(--gold);color:#f2e4d1}
.choice:has(input:checked) .choice-circle{border-color:var(--gold)}
.choice:has(input:checked) .choice-circle::after{transform:scale(1)}
.choice:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.between-sections{display:flex;align-items:center;justify-content:center;gap:20px;padding:24px 0;color:#635952;font-size:9px;letter-spacing:.2em;font-weight:700}
.between-sections span:first-child,.between-sections span:last-child{color:var(--gold);font-size:13px}
.submit-area{margin-top:36px;text-align:center;padding:40px 25px 32px;border:1px solid var(--line);background:radial-gradient(ellipse at 50% 0,rgba(102,58,49,.13),transparent 65%),#101115}
.submit-insignia img{width:55px;height:55px;opacity:.85}
.submit-title{font:500 clamp(22px,2.6vw,29px) var(--serif);margin:10px 0 10px}
.submit-copy{font-size:12px;color:var(--muted);max-width:460px;margin:0 auto 24px;line-height:1.8}
.submit-button{display:flex;align-items:center;justify-content:space-between;gap:30px;min-width:min(340px,100%);margin:auto;background:linear-gradient(100deg,#b99469,#cfb28c);border:1px solid #d3b995;color:#161311;padding:16px 20px 16px 25px;font-size:11px;font-weight:800;letter-spacing:.15em;transition:transform .2s,filter .2s}
.submit-button span:last-child{font-size:20px;line-height:15px}.submit-button:hover{filter:brightness(1.1);transform:translateY(-1px)}
.privacy-line{margin:15px 0 0;color:#777579;font-size:10px}.privacy-line span{color:var(--gold)}
.validation-errors{border:1px solid #a6535a;background:rgba(140,40,50,.15);padding:15px 22px;margin-bottom:25px;font-size:12px}.validation-errors strong{color:#e4a3a8}.validation-errors ul{padding-left:17px;margin:9px 0 0}.validation-errors li{margin:2px 0}
.honey{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.footer{padding:28px 60px;border-top:1px solid var(--line);display:flex;gap:14px;justify-content:center;align-items:center;font-size:9px;letter-spacing:.22em;color:#827a78;font-weight:700}
.footer-mark{font-size:16px;color:var(--gold)}.footer-muted{color:#3c3739;margin:0 10px}.footer-right{color:#5c595a;margin-left:auto}
/* Panel administratora */
.dashboard-wrap{max-width:1180px;padding:68px 28px 100px;margin:auto;min-height:70vh}
.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:31px}
.dashboard-head h1,.result-card h1{font:500 clamp(28px,4vw,44px) var(--serif);margin:10px 0}
.dashboard-head p{font-size:13px;color:var(--muted);margin:0}
.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border:1px solid #796854;color:var(--gold-soft);font-size:10px;font-weight:700;letter-spacing:.11em;white-space:nowrap;transition:background .2s}
.outline-button:hover{background:rgba(197,164,124,.09)}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}
.metric{background:#121318;border:1px solid var(--line);padding:21px;display:flex;flex-direction:column;gap:3px}
.metric span{font-size:9px;letter-spacing:.15em;color:#a6a1a0;font-weight:700}
.metric strong{font:500 34px var(--serif);color:#e9dfd4}.metric small{font-size:10px;color:#777477}
.metric-pending strong{color:var(--gold)}.metric-accepted strong{color:var(--green)}.metric-rejected strong{color:#d48a8d}
.panel-card{background:#121318;border:1px solid var(--line);padding:26px}
.panel-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.panel-card-top h2{font:500 23px var(--serif);margin:0}.panel-card-top span{font-size:11px;color:var(--muted)}
.filter-row{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:23px;border-bottom:1px solid var(--line)}
.filter-pill{font-size:11px;border:1px solid #333136;border-radius:2px;padding:8px 13px;color:#aaa4a2}
.filter-pill.active{border-color:var(--gold);background:#28231f;color:#f2dcbf}.filter-pill:hover{border-color:#a88b6a}
.table-scroll{overflow-x:auto}.app-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}
.app-table th{font-size:9px;color:#827c7d;letter-spacing:.15em;font-weight:700;padding:17px 8px}
.app-table td{border-top:1px solid var(--line);padding:19px 8px;font-size:12px}
.app-table tr:hover td{background:rgba(255,255,255,.013)}
.number-cell{color:var(--gold);font-weight:700}.name-cell{font-weight:700}.muted-cell{color:#aaa2a2}.table-action{color:var(--gold-soft);font-size:11px;font-weight:700}
.status-tag{display:inline-block;padding:6px 10px;font-size:10px;font-weight:700;border-radius:2px;white-space:nowrap}
.status-pending{color:#debc82;background:rgba(186,145,87,.14);border:1px solid rgba(186,145,87,.28)}
.status-accepted{color:#a6d5b4;background:rgba(78,140,98,.13);border:1px solid rgba(78,140,98,.3)}
.status-rejected{color:#df9199;background:rgba(181,71,87,.13);border:1px solid rgba(181,71,87,.3)}
.empty-state{text-align:center;padding:55px 10px}.empty-state span{font-size:28px;color:var(--gold)}.empty-state h3{font:500 24px var(--serif);margin:8px 0}.empty-state p{font-size:12px;color:var(--muted)}
.back-link{display:inline-block;color:var(--gold);font-size:10px;letter-spacing:.14em;margin-bottom:31px;font-weight:700}
.detail-heading .status-tag{font-size:12px}.detail-grid{display:grid;grid-template-columns:1fr 330px;gap:22px;align-items:start}
.detail-panel{margin-bottom:20px;padding:27px 30px}.detail-section-title{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:10px}
.detail-section-title span{color:var(--gold);font:500 16px var(--serif)}.detail-section-title h2{font:500 21px var(--serif);margin:0}
.answer-block{padding:16px 0;border-bottom:1px solid rgba(204,187,166,.08)}.answer-block:last-child{border-bottom:0}
.answer-block>span{display:block;color:#8e8785;font-size:10px;margin-bottom:8px;font-weight:700;letter-spacing:.06em}
.answer-block>div{color:#e6ddd8;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.decision-card{position:sticky;top:24px}.decision-card h2{font:500 24px var(--serif);margin:12px 0}.decision-card>p{font-size:12px;color:var(--muted);line-height:1.8}
.decision-card .form-field{margin:20px 0}.label-optional{font-size:10px;color:#777477;font-weight:400}
.action-button{width:100%;border:1px solid transparent;padding:14px 10px;margin-bottom:10px;font-size:10px;font-weight:800;letter-spacing:.12em}
.accept-button{background:#adc6b0;color:#17231b}.accept-button:hover{background:#c3dec5}
.reject-button{background:rgba(164,59,73,.16);border-color:#8b3e49;color:#ef969e}.reject-button:hover{background:rgba(164,59,73,.3)}
.decision-info{font-size:11px;color:#8c8585;line-height:1.7;margin-top:10px}
.decision-complete{margin-top:22px}.decision-complete p{font-size:12px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.decision-complete strong{color:var(--text)}
/* Strony wyników i błędów */
.center-page{min-height:calc(100vh - 170px);padding:80px 24px;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 40%,rgba(134,83,66,.12),transparent 55%)}
.result-card{max-width:610px;text-align:center;padding:64px 55px;background:#121318;border:1px solid rgba(197,164,124,.21)}
.result-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #976e5d;border-radius:50%;color:var(--gold);font-size:25px;margin:0 auto 24px}.success-icon{border-color:#5d9f78;color:#a6d5b4}
.eyebrow.centered{justify-content:center}.result-card h1{margin:14px 0}.result-card p{color:var(--muted);font-size:13px;line-height:1.9}
.application-number{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#1b1b1e;border:1px solid var(--line);margin:25px 0;padding:18px 22px}
.application-number span{font-size:10px;letter-spacing:.13em;color:#a39d9b}.application-number strong{font:500 25px var(--serif);color:var(--gold)}.result-card .result-muted{margin-bottom:26px;font-size:12px}
.flash{margin:24px auto -30px;max-width:1125px;border:1px solid #655d42;background:#272417;padding:13px 16px;font-size:12px;color:#dfc791}.flash-success{border-color:#4d8265;background:#19261e;color:#c0dec9}
@media(max-width:960px){.topbar{padding:0 26px}.metric-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.decision-card{position:static}.footer{padding:26px 28px}.footer-right{display:none}}
@media(max-width:660px){
 .topbar{height:70px;padding:0 18px}.brand-symbol{width:34px;height:34px}.brand strong{font-size:16px}.brand small{font-size:7px}.top-links{gap:12px}.status-live{font-size:8px;letter-spacing:.08em}.nav-link{font-size:10px}
 .hero{min-height:555px}.hero h1{font-size:clamp(38px,9vw,55px);line-height:1.26}.microheading{font-size:8px;letter-spacing:.21em;gap:9px}.wing{width:20px}.hero-left,.hero-right{display:none}.hero-emblem{width:80px;height:80px}.hero-description{font-size:13px}.desktop-break{display:none}
 .form-wrap{padding:57px 15px 75px}.form-intro{display:block;margin-bottom:24px}.form-intro h2{font-size:29px}.progress-card{margin-top:22px;width:100%}
 .form-section{padding:23px 19px 30px}.section-heading{gap:12px;padding-bottom:19px;margin-bottom:23px}.section-number{font-size:23px}.section-number span{font-size:9px}.section-heading h3{font-size:24px}.section-caption{font-size:8px}.section-heading p{font-size:11px}.section-symbol{display:none}
 .fields-grid{grid-template-columns:1fr;gap:21px}.choice-three{grid-template-columns:1fr}.choice-two{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{min-height:46px}
 .submit-area{padding:33px 15px}.submit-title{font-size:21px}.submit-copy{font-size:11px}.footer{flex-wrap:wrap;justify-content:center;font-size:8px;letter-spacing:.11em;text-align:center}
 .dashboard-wrap{padding:38px 15px 70px}.dashboard-head{display:block}.dashboard-head .outline-button{margin-top:18px}.dashboard-head h1{font-size:30px}.metric-grid{gap:10px}.metric{padding:15px}.metric span{font-size:8px}.metric strong{font-size:27px}.metric small{font-size:9px}
 .panel-card{padding:17px}.panel-card-top h2{font-size:18px}.filter-row{gap:6px}.filter-pill{font-size:10px;padding:6px 9px}.detail-panel{padding:20px}.result-card{padding:44px 24px}.center-page{padding:34px 15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Discord OAuth2 – rekrut oraz panel */
.hero-login{min-height:calc(100vh - 160px)}
.discord-login{display:inline-flex;justify-content:center;align-items:center;gap:13px;flex-wrap:wrap;background:#5865f2;border:1px solid #8790ff;color:white;font-size:12px;font-weight:800;letter-spacing:.09em;padding:18px 24px;min-width:310px;transition:filter .18s,transform .18s}
.discord-login:hover{filter:brightness(1.15);transform:translateY(-2px)}
.discord-login span{font-size:22px;line-height:12px}
.login-notice{color:#8d8a90;font-size:11px;line-height:1.75;margin:23px 0 0}
.nav-user{color:#aaa3a0;font-size:11px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.candidate-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:18px 23px;background:linear-gradient(90deg,rgba(88,101,242,.1),#121318);border:1px solid rgba(116,125,235,.27);margin:0 0 34px}
.candidate-banner>div{display:flex;flex-direction:column;gap:3px}
.candidate-kicker{font-size:9px;color:#aab3ff;letter-spacing:.16em;font-weight:800}
.candidate-banner strong{font-size:15px;color:#f3f2fc}
.candidate-banner div>span:last-child{color:#9d9ca8;font-size:10px}
.candidate-banner a{font-size:11px;color:var(--gold-soft);font-weight:700}
.legacy-note,.role-error{font-size:12px;color:#deabac;line-height:1.7}
.role-ok{color:#a9dfb7!important}
@media(max-width:660px){.nav-user{display:none}.discord-login{min-width:0;width:100%;max-width:360px;font-size:10px}.hero-login{min-height:calc(100vh - 150px)}}
