/* World Creators Hall of Fame — ίδιες γραμματοσειρές με το ExitBall, με χρυσό ύφος θεσμού */
:root{
  --bg:#050913; --bg2:#0a1124; --card:#0c1430; --card2:#101a3a; --line:rgba(227,179,65,.22); --line2:rgba(255,255,255,.08);
  --text:#f5f2ea; --muted:#a9b0c4; --gold:#e3b341; --gold2:#ffe08a; --gold3:#b9851a; --blue:#2f7bff; --cyan:#4fd8ef;
  --goldg:linear-gradient(90deg,#c9921e,#ffe08a 50%,#e3b341);
  --r:18px; --head:"Commissioner","Noto Sans",system-ui,sans-serif; --body:"Noto Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--text);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;min-height:100vh;
  background:radial-gradient(900px 500px at 85% -5%,rgba(227,179,65,.14),transparent 60%),radial-gradient(900px 600px at 0% 20%,rgba(47,123,255,.12),transparent 60%),var(--bg)}
a{color:var(--gold2)}
img{max-width:100%}
h1,h2,h3,h4{font-family:var(--head);line-height:1.12;margin:0 0 12px;font-weight:800}
.muted{color:var(--muted)}
.gold{background:var(--goldg);-webkit-background-clip:text;background-clip:text;color:transparent}
.wrap{max-width:1180px;margin:0 auto;padding:26px 16px 60px}

/* ---------- Μπάρα ---------- */
header.top{position:sticky;top:0;z-index:30;background:rgba(5,9,19,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line2)}
header.top .in{max-width:1240px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);flex:0 0 auto}
.brand .laurel{width:42px;height:42px}
.wm{display:flex;flex-direction:column;line-height:1;font-family:var(--head)}
.wm b{font-size:15px;letter-spacing:.14em;font-weight:800}
.wm i{font-style:normal;font-size:11px;letter-spacing:.32em;color:var(--gold);margin-top:5px;font-weight:700}
.nav{display:flex;gap:4px;align-items:center;margin-inline-start:auto}
.nav a{color:#d7dbe7;text-decoration:none;font:600 15px/1 var(--head);padding:10px 13px;border-radius:10px;white-space:nowrap}
.nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.nav a.on{background:rgba(227,179,65,.16);color:var(--gold2);box-shadow:inset 0 0 0 1px rgba(227,179,65,.5)}
.nav a.ext{color:var(--muted)}
.nav .nav-cta{background:var(--goldg);color:#1c1300;margin-inline-start:6px}
.nav .nav-cta:hover{background:var(--goldg);filter:brightness(1.08);color:#1c1300}
.nav .nav-cta.on{box-shadow:0 0 0 2px rgba(255,224,138,.6)}
.burger{display:none;color:#fff;cursor:pointer;padding:6px}
.langsw{position:relative}
.langsw summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;font:700 14px var(--head)}
.langsw summary::-webkit-details-marker{display:none}
.langsw[open] summary{background:rgba(255,255,255,.07)}
.langsw-menu{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:60;min-width:200px;max-height:70vh;overflow:auto;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 20px 50px rgba(0,0,0,.55)}
.langsw-menu a{display:block;padding:9px 12px;border-radius:10px;color:var(--text);text-decoration:none;font-weight:600}
.langsw-menu a:hover{background:rgba(255,255,255,.06)}
.langsw-menu a.on{background:rgba(227,179,65,.18);color:var(--gold2)}
@media(max-width:920px){
  .burger{display:block}
  .nav{order:5;display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:2px;padding:6px 0 8px;margin:0}
  .nav a{padding:13px 12px}
  .nav .nav-cta{margin:6px 0 0;text-align:center}
  #navtg:checked ~ .nav{display:flex}
  .langsw{margin-inline-start:auto}
  .wm b{font-size:13px}
}

/* ---------- Κουμπιά / κάρτες ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:14px;border:0;cursor:pointer;font:700 16px/1.2 var(--head);text-decoration:none;white-space:nowrap}
.btn.gold{background:var(--goldg);color:#1c1300;box-shadow:0 10px 30px rgba(227,179,65,.25)}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}
.btn.small{padding:9px 14px;font-size:14px;border-radius:11px}
.btn.danger{background:#ef4444;color:#fff}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.card{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--r);padding:20px}
.badge{display:inline-flex;align-items:center;gap:6px;font:700 12px var(--head);letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:rgba(227,179,65,.12);color:var(--gold2);border:1px solid rgba(227,179,65,.35)}
.badge.blue{background:rgba(47,123,255,.14);color:#cfe0ff;border-color:rgba(47,123,255,.35)}
.badge.ok{background:rgba(34,197,94,.14);color:#86efac;border-color:rgba(34,197,94,.4)}
.flash{border-radius:12px;padding:12px 14px;margin-bottom:14px;background:rgba(47,123,255,.12);border:1px solid rgba(47,123,255,.35)}
.flash.err{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.5)}
.flash.ok{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.45)}
.eyebrow{font:700 13px var(--head);letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}

/* ---------- Αρχική ---------- */
.hero{display:grid;grid-template-columns:1fr;gap:28px;align-items:center;padding:30px 0 10px}
.hero h1{font-size:clamp(40px,8vw,82px);line-height:.98;letter-spacing:-.025em;font-weight:900;margin:14px 0}
.hero p.sub{font-size:clamp(17px,2.2vw,21px);color:#d7dbe7;max-width:620px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.trophy{position:relative;aspect-ratio:1/1;max-width:440px;margin:auto;width:100%}
.trophy::before{content:"";position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(227,179,65,.32),transparent 65%)}
.trophy svg{position:relative;width:100%;height:100%}
.status{margin-top:22px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.cd{display:flex;gap:8px}
.cd div{min-width:72px;text-align:center;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:12px;padding:10px 8px}
.cd b{display:block;font:800 26px var(--head)}
.cd span{font-size:12px;color:var(--muted)}
@media(min-width:960px){.hero{grid-template-columns:1.15fr .85fr}}

section{margin-top:56px}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px}
.sec-h h2{font-size:clamp(24px,3.4vw,34px);margin:0}
.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.step b{display:inline-flex;width:34px;height:34px;border-radius:50%;align-items:center;justify-content:center;background:var(--goldg);color:#1c1300;font-family:var(--head);margin-bottom:8px}
.step h3{font-size:18px;margin:0 0 4px}
.step p{margin:0;color:var(--muted);font-size:15px}
@media(min-width:900px){.steps{grid-template-columns:repeat(4,1fr)}}

.cats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.cat{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-height:118px;padding:16px;border-radius:16px;text-decoration:none;color:var(--text);
  background:linear-gradient(160deg,rgba(227,179,65,.10),transparent 55%),var(--card);border:1px solid var(--line);transition:transform .15s,border-color .15s}
.cat:hover{transform:translateY(-2px);border-color:rgba(227,179,65,.6)}
.cat h3{font-size:17px;margin:0}
.cat .n{font-size:13px;color:var(--muted)}
.cat.feature{grid-column:1/-1;min-height:150px;background:linear-gradient(120deg,rgba(227,179,65,.28),rgba(47,123,255,.12) 70%),var(--card)}
.cat.feature h3{font-size:clamp(22px,3vw,30px)}
@media(min-width:700px){.cats{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.cats{grid-template-columns:repeat(4,1fr)}.cat.feature{grid-column:span 2}}

/* ---------- Υποψήφιοι ---------- */
.ava{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;object-fit:cover;flex:0 0 auto}
.ava.mono{font-family:var(--head);font-weight:900;color:#fff;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.35),transparent 55%),var(--c);box-shadow:0 0 0 3px rgba(255,255,255,.06),0 0 0 4px rgba(227,179,65,.35)}
.cands{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.cand{display:flex;gap:14px;align-items:center;padding:14px;border-radius:16px;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--text)}
.cand:hover{border-color:rgba(227,179,65,.6)}
.cand h4{margin:0 0 3px;font-size:16px}
.cand small{color:var(--muted)}
.empty{padding:34px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}
.profile{display:grid;grid-template-columns:1fr;gap:20px}
.profile .head{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.links{display:flex;flex-wrap:wrap;gap:8px}
.links a{padding:8px 12px;border-radius:10px;border:1px solid var(--line2);text-decoration:none;color:var(--text);font-weight:600;font-size:14px}
.links a:hover{border-color:var(--line)}

/* ---------- Hall of Fame ---------- */
.hof-empty{text-align:center;padding:60px 20px}
.hof-empty svg{width:120px;height:120px;opacity:.9}

/* ---------- Footer ---------- */
footer.foot{margin-top:70px;border-top:1px solid var(--line2);padding:26px 0 30px;color:var(--muted)}
footer.foot .in{max-width:1180px;margin:0 auto;padding:0 16px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
footer.foot .in.small{margin-top:16px;font-size:13px}
footer.foot a{color:var(--muted)}
.foot-brand{display:flex;gap:12px;align-items:center}
.foot-brand .laurel{width:40px;height:40px}
.foot-brand b{color:var(--text);font-family:var(--head);letter-spacing:.08em;font-size:13px}
.powered{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--muted);font-size:13px}
.powered img{height:30px}

/* ---------- Φόρμες & πίνακες (admin) ---------- */
label{font-size:14px;font-weight:600}
input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],input[type=search],select,textarea{
  width:100%;background:#060c1d;border:1px solid var(--line2);border-radius:12px;color:var(--text);padding:11px 13px;font:inherit}
input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
.field{margin-bottom:14px}.field label{display:block;margin-bottom:6px}
.grid2{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:760px){.grid2{grid-template-columns:1fr 1fr}}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:10px 8px;border-bottom:1px solid var(--line2);text-align:start;vertical-align:middle}
th{font-family:var(--head);color:var(--muted);font-weight:700}
.tbl{overflow-x:auto}
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.stat b{display:block;font:800 30px var(--head)}
.stat span{color:var(--muted);font-size:14px}
.row-actions{display:flex;gap:6px;flex-wrap:wrap}

/* ---------- Αραβικά / κινέζικα / ιαπωνικά ---------- */
html[lang=ar] body,html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3,html[lang=ar] .btn{font-family:"Noto Sans Arabic","Noto Sans",sans-serif}
html[lang=zh-CN] body,html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3,html[lang=zh-CN] .btn{font-family:"Noto Sans SC","Noto Sans",sans-serif}
html[lang=ja] body,html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3,html[lang=ja] .btn{font-family:"Noto Sans JP","Noto Sans",sans-serif}
html[lang=ar] .hero h1,html[lang=zh-CN] .hero h1,html[lang=ja] .hero h1{letter-spacing:0}

/* ---------- Φάση 2: λογαριασμός, ψηφοφορία, φόρμες ---------- */
.nav .nav-me{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);margin-inline-start:6px;max-width:220px}
.nav .nav-me span{overflow:hidden;text-overflow:ellipsis}
.nav .cnt{display:inline-block;min-width:20px;padding:2px 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;text-align:center;margin-inline-start:4px}
body.admin header.top .nav a{font-size:14px;padding:9px 10px}
@media(max-width:1180px){body.admin .burger{display:block}body.admin .nav{order:5;display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:2px;padding:6px 0 8px;margin:0}body.admin #navtg:checked ~ .nav{display:flex}}
@media(max-width:920px){.nav .nav-me{margin:6px 0 0;justify-content:center;max-width:none}}
.page-title{font-size:clamp(28px,5vw,46px);margin:8px 0 10px}
.form-card{max-width:760px}
.hint{font-size:13px;color:var(--muted);margin-top:5px}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:15px;margin:10px 0}
.check input{margin-top:5px;width:18px;height:18px;accent-color:var(--gold)}
.stack>*+*{margin-top:14px}
.cand-v{flex-direction:column;align-items:stretch;gap:12px;cursor:default}
.cand-v .top{display:flex;gap:14px;align-items:center;text-decoration:none;color:var(--text)}
.cand-v form{margin:0}
.cand-v .btn{width:100%}
.cand.mine{border-color:var(--gold);box-shadow:0 0 0 2px rgba(227,179,65,.35)}
.rank{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;font:800 15px var(--head);background:rgba(255,255,255,.07);flex:0 0 auto}
.rank.r1{background:var(--goldg);color:#1c1300}.rank.r2{background:#cfd6e3;color:#1b2333}.rank.r3{background:#c7894a;color:#1c1300}
.voted{display:flex;gap:10px;align-items:center;justify-content:center;padding:11px;border-radius:12px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.45);font-weight:700}
.list{display:grid;gap:10px}
.item{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid var(--line2)}
.item .meta{color:var(--muted);font-size:14px}
.pill{align-self:flex-start;white-space:nowrap;display:inline-block;padding:3px 9px;border-radius:999px;font:700 12px var(--head);background:rgba(255,255,255,.08)}
.pill.pending{background:rgba(227,179,65,.16);color:var(--gold2)}
.pill.approved,.pill.active{background:rgba(34,197,94,.16);color:#86efac}
.pill.rejected,.pill.removed{background:rgba(239,68,68,.16);color:#fca5a5}
.code{font:800 22px/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.08em;padding:14px 18px;border-radius:12px;background:#060c1d;border:1px dashed var(--gold);display:inline-block;user-select:all}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 16px}
.tabs a{padding:8px 14px;border-radius:999px;border:1px solid var(--line2);text-decoration:none;color:var(--text);font:600 14px var(--head)}
.tabs a.on{background:rgba(227,179,65,.16);border-color:rgba(227,179,65,.5);color:var(--gold2)}
.winners{display:grid;gap:8px}
.winner{display:flex;gap:12px;align-items:center}
.share-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:10px}
.report-link{font-size:13px;color:var(--muted)}
details.box{border:1px solid var(--line2);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.02)}
details.box summary{cursor:pointer;font-weight:700}
.danger-zone{border-color:rgba(239,68,68,.4)}
