:root{font-family:Inter,'Noto Sans TC',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#3a2b2b;background:#fff8f5}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#fff 0,#fff4ee 42%,#f9e4dc 100%)}.wrap{max-width:780px;margin:0 auto;padding:32px 18px 56px}.admin-wrap{max-width:1440px}.card{background:rgba(255,255,255,.92);border:1px solid #f2d6cc;border-radius:24px;box-shadow:0 18px 50px rgba(129,80,65,.13);padding:28px}.brand{text-align:center;margin-bottom:22px}.eyebrow{letter-spacing:.18em;color:#a96f5f;font-size:13px;text-transform:uppercase}.brand h1{font-family:Georgia,serif;font-size:38px;margin:8px 0 4px;color:#6f4136}.chinese-name{font-size:20px;font-weight:800;color:#7d4c42;margin:0 0 10px}.hidden{display:none!important}.event{font-size:18px;font-weight:700;color:#7d4c42}.date{color:#8c6a62;margin-top:4px}.hint{background:#fff6f0;border:1px dashed #e7b9a8;border-radius:16px;padding:14px 16px;line-height:1.65;color:#6b5049}form{display:grid;gap:16px;margin-top:22px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-weight:700;color:#533934}.sub{font-size:13px;color:#8b6b63;margin-top:4px}input,select,textarea{width:100%;margin-top:8px;padding:12px 13px;border:1px solid #dfc2ba;border-radius:12px;background:#fff;color:#3c2d2a;font-size:16px}textarea{min-height:100px;resize:vertical}.required{color:#bd4b3c}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn{border:0;border-radius:999px;padding:13px 24px;background:#8b4d43;color:#fff;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(139,77,67,.22)}.btn.secondary{background:#ead3ca;color:#6f4136;box-shadow:none;text-decoration:none}.btn:disabled{opacity:.58;cursor:not-allowed}.msg{padding:14px;border-radius:14px;display:none}.msg.ok{display:block;background:#eef9ee;border:1px solid #b6e0b4;color:#315f31}.msg.err{display:block;background:#fff0f0;border:1px solid #efb4b4;color:#8b2d2d}.footer{text-align:center;color:#92736b;font-size:13px;margin-top:18px}.admin-table{width:100%;min-width:1180px;border-collapse:collapse;font-size:14px;table-layout:auto}.admin-table th,.admin-table td{border-bottom:1px solid #ead5cd;padding:10px;text-align:left;vertical-align:top}.admin-table th{white-space:nowrap}.admin-table td{word-break:normal}.admin-table td:nth-child(1){min-width:135px}.admin-table td:nth-child(2){min-width:80px}.admin-table td:nth-child(3){min-width:210px;word-break:break-word}.admin-table td:nth-child(4){min-width:55px;white-space:nowrap}.admin-table td:nth-child(9){min-width:150px}.admin-table td:nth-child(10){min-width:200px}.admin-table td:nth-child(11){min-width:150px;white-space:nowrap}.admin-note{min-width:190px;width:100%;min-height:80px;font-size:14px;margin:0 0 8px}.mini-btn{border:0;border-radius:10px;background:#8b4d43;color:#fff;font-weight:800;padding:8px 12px;cursor:pointer}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.stat{background:#fff6f0;border:1px solid #edd0c5;border-radius:16px;padding:14px}.stat b{display:block;font-size:24px;color:#7a473d}.hero-illustration{display:block;width:min(100%,420px);height:auto;margin:18px auto 18px;border-radius:24px;box-shadow:0 16px 36px rgba(129,80,65,.16);border:1px solid #f0d7ce;background:#fff}
.turnstile-wrap{background:#fff6f0;border:1px solid #edd0c5;border-radius:16px;padding:14px;margin:4px 0}.turnstile-wrap iframe{max-width:100%}
.venue-card{margin:16px auto 0;padding:14px 16px;background:#fff6f0;border:1px solid #edd0c5;border-radius:18px;text-align:left;max-width:520px}.venue-title{font-size:13px;letter-spacing:.12em;color:#a96f5f;font-weight:800}.venue-name{font-size:18px;font-weight:900;color:#6f4136;margin-top:5px}.venue-address{color:#6b5049;line-height:1.55;margin:4px 0 8px}.map-link{display:inline-block;color:#8b4d43;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.stats{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.brand h1{font-size:32px}.card{padding:22px 16px}.wrap{padding:18px 12px 42px}}
