:root{--bg:#f4f0e7;--card:#fffdf8;--ink:#171717;--muted:#6d685f;--line:#d8d0c2;--accent:#e7c54a;--bad:#a33e37}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Raleway,Arial,sans-serif;line-height:1.45}a{color:inherit}.topbar{height:70px;display:flex;align-items:center;gap:12px;padding:0 max(16px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,240,231,.95);backdrop-filter:blur(10px);z-index:10}.brand{font-size:28px;font-weight:900;letter-spacing:-2px;text-decoration:none}.topbar>span{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--muted)}.adminpill{margin-left:auto;border:1px solid;border-radius:999px;padding:6px 10px;text-decoration:none;font-size:12px}.wrap{width:min(1180px,calc(100% - 32px));margin:auto;min-height:calc(100vh - 140px)}footer{display:flex;gap:18px;justify-content:center;padding:28px;font-size:11px;color:var(--muted)}
.hero{padding:70px 0 50px;max-width:900px}.hero h1,.eventlayout h1,.adminhead h1,.narrow h1,.reglayout h1{font-size:clamp(44px,7vw,82px);line-height:.9;letter-spacing:-5px;margin:0 0 22px}.hero p{font-size:19px}.eyebrow{font-size:11px;letter-spacing:2.2px;text-transform:uppercase;font-weight:800;margin-bottom:10px}.project{margin-bottom:52px}.project>h2{font-size:34px;letter-spacing:-2px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden}.card img,.placeholder{width:100%;aspect-ratio:16/10;object-fit:cover;display:grid;place-items:center}.placeholder{background:linear-gradient(135deg,#d8d0c0,#f2d267);font-size:42px;font-weight:900;letter-spacing:-4px}.cardbody{padding:20px}.cardbody h3{font-size:26px;line-height:1;margin:5px 0}.cardbody p{color:var(--muted)}.spots{display:inline-block;background:#e9e3d8;border-radius:999px;padding:7px 10px;font-size:12px;margin:5px 0 16px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:0 17px;background:var(--ink);color:#fff;border:0;border-radius:999px;text-decoration:none;font:800 13px Raleway;cursor:pointer}.btn.big{width:100%;min-height:56px;font-size:15px}.back{display:inline-block;margin:30px 0;color:var(--muted)}
.eventlayout{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;margin-bottom:70px}.detailimg{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:28px;position:sticky;top:94px}.desc{margin:25px 0}.form{display:grid;gap:13px}.form label{display:grid;gap:6px;font-size:12px;font-weight:800}.form input,.form textarea,.form select,.mini input,.mini textarea,.mini select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fff;font:500 15px Raleway}.form textarea{min-height:95px}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--accent);border-color:transparent}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:9px!important}.check input{width:auto!important;margin-top:3px}.legal{font-weight:500!important}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.flash{margin-top:18px;padding:12px 14px;border-radius:12px;background:#ead5d2}.flash.success{background:#d9e7da}
.success{max-width:720px;margin:60px auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:44px}.success h1{font-size:clamp(42px,7vw,70px);line-height:.95;letter-spacing:-4px}.mark{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-size:30px;font-weight:900;margin:0 auto 18px}.info{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;text-align:left;margin:22px 0}.info>div{background:var(--bg);padding:12px;border-radius:13px}.info span,.info b{display:block}.info span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.qr{margin:24px}.qr img,.smallqr{width:220px;max-width:100%}.qr small{display:block;color:var(--muted)}.danger{border:0;background:none;color:var(--bad);text-decoration:underline;cursor:pointer}
.narrow{max-width:650px;margin:50px auto 80px}.narrow.wide{max-width:850px}.adminhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:48px 0 28px}.adminhead h1{margin-bottom:0}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.stats>div{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px}.stats span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.stats b{display:block;font-size:24px}.sources{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.sources span{background:#e9e2d5;border-radius:999px;padding:7px 10px;font-size:12px}.adminlist{display:grid;gap:9px;margin-bottom:70px}.admincard{display:flex;justify-content:space-between;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:17px;padding:17px;text-decoration:none}.admincard h3{font-size:22px;margin:4px 0}.admincard small,.admincard span{color:var(--muted)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:19px;margin-bottom:14px}.panel code{display:block;background:var(--bg);border-radius:7px;padding:7px;margin:5px 0;overflow:auto;font-size:11px}.manage{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.mini{display:grid;grid-template-columns:1fr 90px auto;gap:7px;margin-top:10px}.mini.vertical{grid-template-columns:1fr}.tablewrap{overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:17px;margin-bottom:70px}table{width:100%;border-collapse:collapse;min-width:900px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:top}th{font-size:10px;text-transform:uppercase;letter-spacing:1px}td small{display:block;color:var(--muted)}.reglayout{display:grid;grid-template-columns:1.15fr .85fr;gap:15px;margin-bottom:70px}.checkin{max-width:640px;margin:60px auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:42px}.checkin h1{font-size:58px;letter-spacing:-4px}.ok,.bad{padding:20px;border-radius:14px;background:#d9e7da;font-weight:800}.bad{background:#ead5d2;color:var(--bad)}.legal{max-width:850px;margin:55px auto 80px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:38px}.legal h1{font-size:44px;line-height:1;letter-spacing:-2px}.empty{padding:30px;border:1px dashed var(--line);border-radius:18px}
.embed .topbar,.embed footer,.embed .back{display:none}.embed .wrap{width:min(900px,calc(100% - 24px))}.embed .eventlayout{grid-template-columns:1fr}.embed .detailimg{position:static;aspect-ratio:16/8}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.eventlayout,.reglayout{grid-template-columns:1fr}.detailimg{position:static;aspect-ratio:16/9}.stats{grid-template-columns:repeat(2,1fr)}.manage{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:calc(100% - 24px)}.grid{grid-template-columns:1fr}.hero{padding:45px 0}.hero h1{letter-spacing:-4px}.adminhead{align-items:flex-start;flex-direction:column}.two{grid-template-columns:1fr}.success,.legal,.checkin{padding:26px 18px;margin:30px auto}.info{grid-template-columns:1fr}footer{flex-wrap:wrap}}
