:root{--green:#2f7d32;--green-dark:#1f5c24;--cream:#f7fff7;--card:#fff;--text:#1d2a1f;--muted:#66736a;--border:#dbe8dd}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--cream);color:var(--text)}header{background:var(--green);color:white;padding:18px;text-align:center}main{width:min(1050px,100%);margin:0 auto;padding:16px}nav{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}nav a,.button{background:#eef6ef;color:var(--green-dark);text-decoration:none;padding:9px 13px;border-radius:12px;font-weight:700}.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:16px;margin-bottom:16px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}input,textarea,select,button{width:100%;padding:12px;border-radius:12px;border:1px solid var(--border);font:inherit}button{background:var(--green);color:white;border:none;cursor:pointer;font-weight:700}button.secondary,.secondary{background:#eef6ef;color:var(--green-dark)}label{display:block;margin-top:12px;margin-bottom:5px;font-weight:700}.small{color:var(--muted);font-size:.92rem}.notice{background:#fff7d6;border-color:#ecd36b}.quest-card{display:block;color:var(--text);text-decoration:none}.submission img,.preview img{width:100%;border-radius:14px;display:block;max-height:380px;object-fit:contain;background:#f4f4f4}.bonus{background:#fff7d6;border:1px solid #ecd36b;border-radius:12px;padding:8px;font-weight:700}.row{display:flex;gap:8px;flex-wrap:wrap}.row>*{flex:1;min-width:180px}.hidden{display:none!important}.inline{display:inline-block;width:auto;margin-bottom:8px}.collapsible{cursor:pointer;margin-top:24px}.collapsed-section{display:none}.compact-admin-section{max-height:340px;overflow:auto;margin-bottom:24px}table{width:100%;border-collapse:collapse;background:white}table th,table td{padding:8px;border-bottom:1px solid #eee;text-align:left;vertical-align:middle}table input{width:100%;padding:6px;font-size:12px}.actions{display:flex;gap:6px;flex-wrap:wrap}.actions form{flex:1;min-width:120px}
