:root{--bg:#101010;--card:#191919;--text:#f5f2eb;--muted:#9a988f;--accent:#d6ff62;--line:#303030}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;min-height:100vh}
a{color:inherit;text-decoration:none}
header{border-bottom:1px solid var(--line);padding:0 22px}
.nav{max-width:1100px;min-height:74px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.logo{font-size:20px;font-weight:900;letter-spacing:-1px;white-space:nowrap}
.logo span{color:var(--accent)}
nav{display:flex;gap:7px;flex-wrap:wrap}
nav a{padding:10px 12px;border-radius:9px;color:var(--muted);font-size:13px}
nav a:hover,nav a.active{background:#252820;color:var(--accent)}
main{max-width:1000px;margin:auto;padding:55px 22px 75px}
.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:800}
h1{font-size:clamp(38px,7vw,68px);line-height:1.02;letter-spacing:-3px;margin:18px 0}
h1 span{color:var(--accent)}
h2{letter-spacing:-1px}
.intro{color:var(--muted);font-size:16px;line-height:1.8;max-width:650px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,4vw,36px);margin-top:24px}
.row{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:24px}
.tile{display:block;background:var(--card);border:1px solid var(--line);border-radius:17px;padding:23px;transition:border-color .2s,transform .2s}
.tile:hover{border-color:var(--accent);transform:translateY(-2px)}
.tile .emoji{font-size:27px}.tile h3{margin:14px 0 8px}.tile p{color:var(--muted);font-size:14px;line-height:1.7;margin:0}
button,select,input{font:inherit}
button{cursor:pointer}
.btn{display:inline-block;border:1px solid var(--line);background:#242424;color:var(--text);padding:12px 17px;border-radius:11px}
.btn:hover{filter:brightness(1.15)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#111;font-weight:800}
.controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
select,input{max-width:100%;background:#202020;color:var(--text);border:1px solid var(--line);padding:12px;border-radius:10px}
.joke{font-size:clamp(21px,4vw,30px);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:28px 0}
.meta,.status{font-size:12px;color:var(--muted)}
.status{margin-top:18px;min-height:18px}
footer{border-top:1px solid var(--line);padding:25px 20px;text-align:center;color:var(--muted);font-size:12px}
.empty{color:var(--muted);line-height:1.8}
